<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">AM</journal-id><journal-title-group><journal-title>Applied Mathematics</journal-title></journal-title-group><issn pub-type="epub">2152-7385</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/am.2016.79074</article-id><article-id pub-id-type="publisher-id">AM-66770</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Physics&amp;Mathematics</subject></subj-group></article-categories><title-group><article-title>
 
 
  Petri Nets—A Versatile Modeling Structure
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>iryam</surname><given-names>Barad</given-names></name><xref ref-type="aff" rid="aff1"><sub>1</sub></xref></contrib></contrib-group><aff id="aff1"><label>1</label><addr-line>Department of Industrial Engineering, Faculty of Engineering, Tel Aviv University, Tel Aviv, Israel</addr-line></aff><author-notes><corresp id="cor1">* E-mail:</corresp></author-notes><pub-date pub-type="epub"><day>26</day><month>05</month><year>2016</year></pub-date><volume>07</volume><issue>09</issue><fpage>829</fpage><lpage>839</lpage><history><date date-type="received"><day>22</day>	<month>March</month>	<year>2016</year></date><date date-type="rev-recd"><day>accepted</day>	<month>23</month>	<year>May</year>	</date><date date-type="accepted"><day>26</day>	<month>May</month>	<year>2016</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  Petri Nets (PNs) are an effective structure for modeling and analyzing asynchronous systems with concurrent and parallel activities. A Petri net models the static properties of a discrete event system concentrating on two basic concepts: events and conditions. Most of the theoretical work on Petri nets is a formal definition of Petri nets structures, which consist of a set of places, representing conditions, a set of transitions, representing events, an input function and an output function. For practical purposes, a graphical representation is more useful. Two types of nodes portray places and transitions. A circle is a place and a bar is a transition. There is no inherent measure of time in a classical Petri net. To approach time-based evaluation of system performances, Timed Petri Nets (TPNs) were introduced. Modeling the notion of time is not straightforward. There are several possibilities for introducing time in PNs, among them timed transitions and timed places. This paper reviews several published examples where Petri Nets were used in different circumstances such as estimating expected utilization of processing resources at steady state in open queueing networks, verifying computerized simulations and batch planning in textile industry.
 
</p></abstract><kwd-group><kwd>Petri Nets</kwd><kwd> Timed Petri Nets</kwd><kwd> Open Queueing Networks</kwd><kwd> Simulation Verification</kwd><kwd> Textile Industry</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>The fundamental concepts and characteristics of Petri Nets (PNs) made them a significant tool for modeling and analyzing asynchronous systems with concurrent and parallel activities. A Petri net is both a graphical and an analytical modeling tool. Carl Adam Petri from Bonn University, Germany, developed it as a special class of generalized graphs or nets. The chief attraction of a Petri net is the way in which it identifies the basic aspects of various systems, conceptually, through a graphical representation, and mathematically, eventually supported by formal programming languages. As a graphical tool, PNs are a visual-communication aid similar to flow charts, block diagrams, and networks. In addition, tokens (or markers) in these nets can simulate the dynamic activities of systems. As a mathematical tool, it allows setting up algebraic equations for formally analyzing the mathematical models governing the systems’ behavior, similarly to other approaches to formal analysis, e.g. occurrences nets and reachability trees. Using Petri nets to model and analyze asynchronous systems with concurrent and parallel activities is simple and straightforward making them a valuable technique for analyzing such complex real time systems. They are capable of modeling material and information flow phenomena, detecting the existence of deadlock states and inconsistency and are well suited for the study of Discrete Event Systems (DES). As such, they have been applied in manufacturing and logistics, hardware design and business processes, as well as in distributed databases and DES simulation [<xref ref-type="bibr" rid="scirp.66770-ref1">1</xref>] - [<xref ref-type="bibr" rid="scirp.66770-ref3">3</xref>] .</p><p>There is no time measure in the original PNs. Hence, their modeling capability was limited and models often became excessively large, because all data manipulation had to be represented directly into the net structure. To overcome these drawbacks, over the years PNs have been extended in many directions including, time, data and hierarchy modeling. To adapt Petri nets to the study of systems’ performances, Timed Petri Nets (TPNs), allowing for delays in the system, were introduced. There are several possibilities for introducing time in PNs, thus transforming them into TPNs, among them timed transitions and timed places (see e.g. [<xref ref-type="bibr" rid="scirp.66770-ref4">4</xref>] [<xref ref-type="bibr" rid="scirp.66770-ref5">5</xref>] for detailed presentations).</p><p>The objective of this paper is to show different ways to utilize this modeling frame. The paper reviews several published papers where the framework was used in different circumstances such as, estimating expected utilization of resources at steady state in open queueing networks, verifying computerized simulations and batch planning in textile industries.</p><p>The paper is organized as follows. Section 2, entitled “From Petri Nets to Timed Petri Nets”, presents basic PN modeling and describes a technique for modeling TPNs, which associates time with places. Section 3 entitled “Decomposing TPNs” reviews a method for decomposing Timed Petri Nets of Open Queuing Networks. Section 4 describes the decomposition application for verifying computerized simulation. Section 5 entitled “Application of TPNs to textile processing” describes an additional published example. Section 6 concludes the paper.</p></sec><sec id="s2"><title>2. From Petri Nets to Timed Petri Nets</title><p>The guiding principles of net theories concern states/conditions and changes/events, two fundamentally intertwined concepts. In a Petri Net the relationships between these two concepts are both graphically and analytically described. A PN consists of two parts: 1) its structure and 2) its marking representing the system overall state on the defined structure. The net structure describes its possible states (places) and events (transitions). When one or more markers (tokens) reside in a place, those tokens mark it and thus determine its local state. The state of the entire system is determined by the net marking, which is the distribution of markers to the net places. Tokens move according to firing rules. Firing of transitions and flows of tokens, model the dynamic behavior of the net. Let us first present PNs as a graphical tool and then as an analytical tool.</p><sec id="s2_1"><title>2.1. PNs as a Graphical Tool</title><p>A Petri net is a graph, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x6.png" xlink:type="simple"/></inline-formula>where:</p><p>T is a set of transitions<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x7.png" xlink:type="simple"/></inline-formula>, portrayed by bars, representing instantaneous or primitive events.</p><p>P is a set of places<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x8.png" xlink:type="simple"/></inline-formula>, portrayed by circles, representing conditions.</p><p>I(T) denotes the set of all input places of transition T. Similarly, O(T) denotes the set of all output places of transition T.</p><p>A is a set of directed arcs (T*P) U (P*T) derived through an incidence matrix (see Section 2.2). A “marking”, M of a Petri net is a distribution of tokens (or markers) to the places of a Petri net.</p><p>A transition can “fire” (meaning the respective event occurs) if there is at least one marker in each of its input places (the necessary conditions for its occurrence). Following the firing of a transition, the number of tokens in the corresponding input places is depleted by one.</p><p><xref ref-type="fig" rid="fig1">Figure 1</xref> illustrates a simple example of an ordinary PN, PN1.</p><p>Its structure is as follows:</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x9.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x10.png" xlink:type="simple"/></inline-formula></p><fig id="fig1"  position="float"><label><xref ref-type="fig" rid="fig1">Figure 1</xref></label><caption><title> An ordinary Petri Net, PN1</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/3-7403140x11.png"/></fig><p>We see that the original marking of the net contains one token in place P<sub>0</sub>. The firing of transition T<sub>1</sub> will insert one token in P<sub>1</sub>. As P<sub>0</sub> and P<sub>1</sub> are the two input places of transition T<sub>3</sub>, they will enable its firing. Firing of transition T<sub>3</sub> will remove the tokens in P<sub>0</sub> and P<sub>1</sub> and insert a token in P<sub>3</sub>. Then, transition T<sub>4</sub> will fire and will thus remove the token in P<sub>3</sub> and insert a token in P<sub>0</sub>. This process describes a firing sequence. Another firing sequence will take place if following the current initial state of the system, transition T<sub>2</sub> fires introducing a token in place P<sub>2</sub>. The respective tokens in places P<sub>0</sub> and P<sub>2</sub> will enable the firing of transition T<sub>5</sub> that will remove the tokens in P<sub>0</sub> and P<sub>2</sub> and will add a token to place P<sub>4</sub>. This will be followed by the firing of transition T<sub>6</sub> removing the token in P<sub>4</sub> and inserting a token in P<sub>0</sub>.</p><p>Assume now that the initial state of the net contains not one token but three tokens, one in each of the three places P<sub>0</sub>, P<sub>1</sub> and P<sub>2</sub>. This situation represents a conflict as both transitions T<sub>3</sub> and T<sub>5</sub> are enabled. Which transition should fire, T<sub>3</sub> or T<sub>5</sub>? A rule for solving the conflict should be introduced, or the system should be redesigned to eliminate the conflict.</p></sec><sec id="s2_2"><title>2.2. PNs as an Analytical Tool</title><p>Formal analysis of the model can be carried out when a PN is described by linear algebraic equations.</p>Incidence Matrix<p>The structure of a PN is an integer matrix C, called an incidence or flow matrix. C is an m &#215; n matrix whose m rows correspond to the places of the net and whose n columns correspond to the transitions. In ordinary PNs an element of this matrix is defined as follows:</p><disp-formula id="scirp.66770-formula813"><graphic  xlink:href="http://html.scirp.org/file/3-7403140x12.png"  xlink:type="simple"/></disp-formula><p>It means that upon firing transition <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x13.png" xlink:type="simple"/></inline-formula> one token is removed from each input place <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x14.png" xlink:type="simple"/></inline-formula> and one token is added to each output place. The incidence matrix C1 of the PN1 in <xref ref-type="fig" rid="fig1">Figure 1</xref> is given below.</p><disp-formula id="scirp.66770-formula814"><graphic  xlink:href="http://html.scirp.org/file/3-7403140x15.png"  xlink:type="simple"/></disp-formula><p>By convention, the flow of tokens through transition <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x16.png" xlink:type="simple"/></inline-formula> is denoted by<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x17.png" xlink:type="simple"/></inline-formula>, j = 1, 2, 3, 4, 5, 6.</p></sec><sec id="s2_3"><title>2.3. Time modeling of PNs</title><p>According to the version, introduced in [<xref ref-type="bibr" rid="scirp.66770-ref4">4</xref>] and adopted by others e.g. [<xref ref-type="bibr" rid="scirp.66770-ref6">6</xref>] , Timed Petri Nets (TPNs) associate a positive number s(T) to each transition T. In [<xref ref-type="bibr" rid="scirp.66770-ref5">5</xref>] a different approach to model time in Petri nets was developed, relying on the classical Petri nets approach to a non-primitive event (with time greater than zero) which prescribes its decomposition into two transitions representing two primitive events. These are respectively a commencement and a termination of the original non-primitive event. The author associates time duration (delays) with the places describing the occurrence of the non-primitive events. Other scientists also adopted this approach. The delay is modelled either as a deterministic or as a stochastic variable. However, if a stochastic model is used, calculations only consider the expected values.</p><p>Our approach uses timed places to model processing of multiple part classes within a mix, repairs following machine breakdowns and eventually set-ups ensuing a change in mix. Since most of these variables are stochastic by nature, the actual values are their respective expected values. For instance, the input of parts to the system and the machine breakdowns are respectively the expected time between arrivals and the expected time between failures. It is worth mentioning that the current method is not Stochastic Petri Nets, which deal with non-primi- tive events whose duration is assumed to be exponentially distributed [<xref ref-type="bibr" rid="scirp.66770-ref7">7</xref>] . A Timed Petri Net (TPN) graph looks exactly like a PN graph, except that tokens in timed places become available only after z<sub>i</sub> time units (z<sub>i</sub> &gt; 0). This delay is independent of the token’s arrival instant. A TPN is described by its incidence matrix, which is exactly like that of its equivalent PN, to which a diagonal matrix Z, representing time delays, is added.</p><p>Let us now turn our attention back to <xref ref-type="fig" rid="fig1">Figure 1</xref>. Examining PN1 we observe that places P<sub>3</sub> or P<sub>4</sub> are as described above, meaning that a token in P<sub>3</sub> or in P<sub>4</sub> may well represent concurrent, time elapsing activities. We may now interpret PN1 as a PN describing a resource that provides service to two types of customers. The firing of transitions T<sub>1</sub> or T<sub>2</sub>, respectively represents input of type 1 or type 2 customers to the system. A token in place P<sub>1</sub> or P<sub>2</sub>, respectively, represents a type 1 or type 2 customers waiting to be served by the resource. A token in place P<sub>0</sub> shows that the resource is available. Firing of transition T<sub>3</sub> or T<sub>5</sub>, respectively, expresses the beginning of servicing a type 1 or type 2 customers. Firing of transition T<sub>4</sub> or T<sub>6</sub> expresses the end of service. This occurs after z<sub>3</sub> or z<sub>4</sub>, time units have respectively elapsed. Then, one token returns to P<sub>0</sub>, meaning the resource is again available.</p><p>To convert PN1, illustrated in <xref ref-type="fig" rid="fig1">Figure 1</xref>, into TPN1, we use incidence matrix C1 and delay matrix Z1. Z1 is defined as a square diagonal matrix with elements Z1 = z<sub>i</sub>, i = 0, 1, 2, 3, 4 for i = j and zero otherwise. The timed places are z<sub>3</sub> and z<sub>4</sub> respectively representing service time of type 1 and type 2.</p><p>The graphical representation of TPN1 is also <xref ref-type="fig" rid="fig1">Figure 1</xref> to which z<sub>3</sub> and z<sub>4</sub> are respectively added (eventually in parentheses) below places 3 and 4.</p><disp-formula id="scirp.66770-formula815"><graphic  xlink:href="http://html.scirp.org/file/3-7403140x18.png"  xlink:type="simple"/></disp-formula><p>The flow of tokens through transition<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x19.png" xlink:type="simple"/></inline-formula>, j = 1, 2, 3, 4, 5, 6 is vector I.</p></sec></sec><sec id="s3"><title>3. Decomposing Timed Petri Nets</title><p>The author of [<xref ref-type="bibr" rid="scirp.66770-ref8">8</xref>] provides a detailed illustration and proof for decomposing a TPN model of n-part type open queuing network with M workstations, into M independent TPNs. A part (customer) type is a composite of specific jobs to be performed by workstations (resources) in a predetermined order. In open queueing networks, customers enter and leave the network in an unconstrained manner.</p><p>The essence of the approach consists in proving that, under steady state conditions as defined in [<xref ref-type="bibr" rid="scirp.66770-ref5">5</xref>] and applied to open systems, the arrival flow of any such job to its assigned workstation equals the input flow to the system of its parent part type.</p><p><xref ref-type="fig" rid="fig2">Figure 2</xref> graphically illustrates an example of an open queueing network at steady state, as presented in [<xref ref-type="bibr" rid="scirp.66770-ref10">10</xref>] . It consists of M = 3 workstations and n = 4 part types. Parts of type j, (exogenous customers comprising the mix served by the queueing network) arrive at the system with given flow rate<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x20.png" xlink:type="simple"/></inline-formula>, j = 1, 2, 3, 4. Processing of a part is composed of a number of operations (jobs) to be performed in a given order by previously assigned stations (deterministic routing). Upon arrival, each part is routed to its initial station. Part types 1 and 2 enter the system at workstation 1, while part types 3 and 4 enter the system at workstation 2. Part types 1 and 4 exit the system at workstation 3, while part types 2 and 3 exit at workstation 2. The flow labeling in <xref ref-type="fig" rid="fig2">Figure 2</xref> indicates the preservation of the exogenous input flows throughout the system. According to the conditions detailed in Section 3.1, this means the queueing network operates at steady state.</p><sec id="s3_1"><title>3.1. TPN Decomposition Rules</title><p>An important strategy for managing complex systems is breaking them down into appropriate subsystems and providing means for integrating them.</p><p>A TPN model of an n-part type open queueing network with M workstations can be decomposed into M independent TPNs, provided steady state conditions are fulfilled at each work station m, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x21.png" xlink:type="simple"/></inline-formula></p><p>As stated in [<xref ref-type="bibr" rid="scirp.66770-ref9">9</xref>] and repeated in [<xref ref-type="bibr" rid="scirp.66770-ref5">5</xref>] , given a timed Petri net by its incidence matrix C, the net functions at its steady-state rate for a given flow vector <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x22.png" xlink:type="simple"/></inline-formula> iff <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x22.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x23.png" xlink:type="simple"/></inline-formula> satisfies the equations:</p><disp-formula id="scirp.66770-formula816"><label>(1)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x24.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.66770-formula817"><label>(2)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x25.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x27.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x27.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x26.png" xlink:type="simple"/></inline-formula>is a generator of the set of solutions of Equation (1) <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x27.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x26.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x28.png" xlink:type="simple"/></inline-formula></p><p>Z is the delay matrix (on places) defined as a square diagonal matrix with elements <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x29.png" xlink:type="simple"/></inline-formula> <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x29.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x30.png" xlink:type="simple"/></inline-formula> for i = j and zero otherwise (see detailed matrix in Section 2.3).</p><p>Q(0) is a vector representing the initial marking of the net.</p><p>(C<sup>+</sup>) is obtained by replacing the “−1” elements in the incidence matrix C by zeros.</p><p>Intuitively Equations (1) and (2) can be respectively associated with conservation of flow and conservation of tokens.</p></sec><sec id="s3_2"><title>3.2. Application of the Decomposition Rules</title><p>Let us now apply the decomposition rules to the queueing network in <xref ref-type="fig" rid="fig2">Figure 2</xref>. The two steady state conditions,</p><fig id="fig2"  position="float"><label><xref ref-type="fig" rid="fig2">Figure 2</xref></label><caption><title> An open queueing network</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/3-7403140x31.png"/></fig><p>Equations (1) and (2), should be fulfilled by each of the three stations.</p><p>Here, we shall only analyze workstation 1. This station processes two part types, type 1 and type 2, thus matching TPN1 in <xref ref-type="fig" rid="fig1">Figure 1</xref>. We may notice that station 1 is the entering station of these two part types to the open queueing network. Hence, their arrival flow at this station is their respective exogenous flow to the system, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x32.png" xlink:type="simple"/></inline-formula>and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x32.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x33.png" xlink:type="simple"/></inline-formula>. According to <xref ref-type="fig" rid="fig2">Figure 2</xref> when part type 1 leave station 1, they proceed to station 3, while part type 2 proceed to station 2.</p><p>Applying Equation (1) to the incidence matrix of <xref ref-type="fig" rid="fig1">Figure 1</xref>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x34.png" xlink:type="simple"/></inline-formula>(<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x34.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x35.png" xlink:type="simple"/></inline-formula>), we obtain, respectively, from rows 2 and 3: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x34.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x35.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x36.png" xlink:type="simple"/></inline-formula>and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x34.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x35.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x36.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x37.png" xlink:type="simple"/></inline-formula>. Rows 3 and 5, respectively, yield <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x34.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x35.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x36.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x37.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x38.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x34.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x35.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x36.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x37.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x38.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x39.png" xlink:type="simple"/></inline-formula>. The above results comply with the equation in row 1. Combining the equations, we obtain,</p><disp-formula id="scirp.66770-formula818"><label>(3)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x40.png"  xlink:type="simple"/></disp-formula><p>It is thus seen that under steady state conditions the entering (exogenous) flow of type 1 parts to the system, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x41.png" xlink:type="simple"/></inline-formula>equals I<sub>4</sub>, the firing rate of transition T<sub>4</sub> representing the exit flow of type 1 parts from station 1 and also their entering flow to station 3. Similarly, at steady state the entering (exogenous) flow of type 2 parts to the system, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x41.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x42.png" xlink:type="simple"/></inline-formula>equals I<sub>6</sub>, the exit flow of type 2 parts from station 1, which is also their entering flow to station 2.</p><p>In this example, one generator of the set of solutions of Equation (1) is J<sub>1</sub>,</p><disp-formula id="scirp.66770-formula819"><label>(4)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x43.png"  xlink:type="simple"/></disp-formula><p>The “1” values in J<sub>1</sub> represent all the possible steady states of workstation 1: P<sub>0</sub>-idle, P<sub>3</sub>-processing part type 1, P<sub>4</sub>-processing part type 2.</p><p>Substituting Equation (4) in Equation (2) and using Equation (3) leads to:</p><disp-formula id="scirp.66770-formula820"><label>(5)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x44.png"  xlink:type="simple"/></disp-formula><p>Q<sub>0</sub>, Q<sub>3</sub>, Q<sub>4</sub> represent the token content of places P<sub>0</sub>, P<sub>3</sub>, P<sub>4</sub> for any firing sequence. Hence, the Left Hand Side (LHS) of Equation (5) represents the sum of tokens over the steady states of station 1. Since these three states represent all the mutually exclusive states of workstation 1, LHS equals 1. The three summation components of the Right Hand Side (RHS) represent the respective proportion of time station 1 spends in each state under steady-state conditions or, in probabilistic terms, it represents the steady state distribution over the three states. After substitution, Equation (5) becomes:</p><disp-formula id="scirp.66770-formula821"><label>(6)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x45.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x46.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x46.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x47.png" xlink:type="simple"/></inline-formula> are the respective contributions of part type 1 and part type 2 to the utilization of station 1. As <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x46.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x47.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x48.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x46.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x47.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x48.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x49.png" xlink:type="simple"/></inline-formula> represent the total entering flow to station 1, intuitively, z<sub>0</sub> is the station expected idle time between any two consecutive arrivals of parts. Any feasible solution has to satisfy z<sub>0</sub> &gt; 0; leading to:</p><disp-formula id="scirp.66770-formula822"><label>(7)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x50.png"  xlink:type="simple"/></disp-formula><p>We may now use the above results to estimate the utilization of a station.</p></sec><sec id="s3_3"><title>3.3. Estimating a Station Utilization Using TPN</title><p>Based on the application of the decomposition rules presented in the previous section, the procedure for computing the utilization of a station is summarized as follows:</p><p>The total expected steady-state utilization r<sub>m</sub> of station m, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x51.png" xlink:type="simple"/></inline-formula>is the sum of its expected utilization by each class of customers. These comprise the n-part types as determined by a given deterministic routing and eventual machine failures or other disturbances including eventual set-ups.</p><disp-formula id="scirp.66770-formula823"><label>(8)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x52.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x53.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x53.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x54.png" xlink:type="simple"/></inline-formula> represent the respective contributions of<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x53.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x55.png" xlink:type="simple"/></inline-formula>, the input flow of part types j, and that of I<sub>f</sub>, the flow of disturbances, to the m station utilization, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x53.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x55.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x56.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x53.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x55.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x56.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x57.png" xlink:type="simple"/></inline-formula></p><disp-formula id="scirp.66770-formula824"><label>(9)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x58.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x59.png" xlink:type="simple"/></inline-formula>is the expected operation duration of part j at station m.</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x60.png" xlink:type="simple"/></inline-formula>is the expected duration of a disturbance.</p><p>Provided the constraint r<sub>m</sub> &lt; 1 is satisfied for each<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x61.png" xlink:type="simple"/></inline-formula>, and all buffers are of unlimited size, Equation (8) is a valid expression of the TPN based expected steady state utilization r<sub>m</sub> of any processing station m, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x61.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x62.png" xlink:type="simple"/></inline-formula>in the system.</p><p>In the next section, we shall use Equation (8) for verifying simulation models results of computerized open queueing network at steady state.</p></sec></sec><sec id="s4"><title>4. Using Timed Petri Nets as a Simulation Verification Tool</title><p>This section is a simplified version of a paper describing the usage of decomposed Timed Petri Nets as an analytical approach for verification of simulation models [<xref ref-type="bibr" rid="scirp.66770-ref11">11</xref>] .</p><p>An important and difficult task in any simulation project is the validation and verification of the simulation model. Validation is commonly defined as the process intended to substantiate that the conceptual simulation model, within its domain of applicability, is an accurate representation of the real world system it describes. The verification process seeks to determine that the computerized simulation model was built right, and operates as intended. There is a rich literature on these topics, see e.g. [<xref ref-type="bibr" rid="scirp.66770-ref12">12</xref>] - [<xref ref-type="bibr" rid="scirp.66770-ref14">14</xref>] .</p><p>From an output analysis perspective, system simulation is typically classified into terminating or steady state. While terminating simulations aim to estimate system parameters for periods well defined in terms of starting and ending conditions, steady state simulations aim to estimate system parameters as limits obtained for infinite simulation time. Before reaching steady state conditions when the system parameters attain stable values, the system behavior undergoes transition periods, reflecting the initial system operating conditions (see e.g. [<xref ref-type="bibr" rid="scirp.66770-ref15">15</xref>] ). In the analysis of such systems, an important objective is to avoid bias in parameter estimation, eventually introduced by data collected during transition periods. One among the many approaches to simulation verification is comparing simulation outputs with analytical results [<xref ref-type="bibr" rid="scirp.66770-ref16">16</xref>] . In many simulation studies dealing with manufacturing systems or computers and communication systems, the networks of queues represents the reality modelled by the system simulation. Hence, for simulation verification of such systems analytical approaches describing queueing networks may be appropriate.</p><p>The TPN approach puts into evidence the flow realization along a variety of network paths and may consider different network structures. Such a decomposed TPN model of a resource enables a quick calculation of its expected utilization at steady state thus providing a stick yard against which to verify the long run simulation based utilization estimate of the same resource. In other words, it represents a verification method.</p><sec id="s4_1"><title>4.1. A Numerical Example</title><p>There are three stations (M = 3) and four part types (n = 4).</p><p>1) The inter-arrival time for part j, j = 1, 2, 3, 4 is Erlang distributed with mean A<sub>j</sub> (time units)</p><p>The reciprocal of the inter-arrival mean serves to estimate the average input flow of parts. Hence the input flows (in parts per time unit, pptu) are:</p><p>2) The service times (in time units) of parts j, j = 1, 2, 3, 4 at stations m = 1 and m = 3 are normally distributed, while the service time at station m = 2 is Uniformly distributed, each with their respective mean, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x64.png" xlink:type="simple"/></inline-formula>, m = 1, 2, 3.</p><sec id="s4_1_1"><title>4.1.1. The Simulation Verification Procedure</title><p>We shall first use Equation (9) to calculate<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x65.png" xlink:type="simple"/></inline-formula>, for j = 1, 2, 3, 4, the contribution of each part type to the station’s utilization, and then Equation (8) to calculate r<sub>m</sub>, the total expected utilization of station m (m = 1, 2, 3).</p></sec><sec id="s4_1_2"><title>4.1.2. Simulation Results and Conclusions</title><p>The simulation project used Siman V software and the Arena framework. As the published example investigated the effect of several factors such as the planned utilization of the stations and the queue discipline, forty-eight simulation runs were carried out. Here we do not investigate such effects. We solely compared the TPN calculated estimates with the simulation average results after we deleted the transient period (about 400 minutes).The simulation average estimating the station utilizations were close to those calculated using TPN and their differences were no higher than 2%.</p><p>The relatively low differences obtained between the numerical results of the two methods provide evidence that the TPN technique is able to verify simulation models. Observed discrepancies between the TPN based and the results of the computerized simulation model can thus detect eventual flaws in the simulation model.</p></sec></sec></sec><sec id="s5"><title>5. Application of TPNs to Textile Processing</title><p>We shall briefly present an additional example dealing with the application of TPNs to textile batch planning [<xref ref-type="bibr" rid="scirp.66770-ref17">17</xref>] .</p><p>The need for advanced methods to model and characterize the performance of planning and scheduling is especially apparent in the textile dyeing and finishing operations. There is a huge number of process combinations that a fiber, yarn or fabric may go through on its way to the final product. Well organized planning and control of the entering materials, flowing through the intricate manufacturing operations to reach their final state is critical for meeting customers due dates and thus provide on time delivery. The TPN decomposition approach has been developed and applied to calculate long run resource utilization for manufacturing systems of discrete items. The textile manufacturing conditions are different. Workstations (machines) are of two types: batch processing (especially for dyeing) and continuous processing (for finishing operations such as squeezing or drying). The discrete items entering the system are orders. Orders vary in size, fabric type, fiber blend, color and the kinds of required operations. For batches, an order “size” is measured in weight units while for continuous processing it is measured in length units. An order is characterized by its specific processing requirements and by its specific attributes such as fiber blend and Machine Direction (MD) weight (kg/m). Incoming orders are stored and wait for processing. There are two main operation categories: equipment oriented operations and work force oriented operations such as lot transporting, loading and unloading operations. As the relative duration of the latter is insignificant, here these operations are disregarded.</p><p>To apply the TPN decomposition approach for calculating the expected (long run) utilization at steady state of the equipment used in the textile processes, we shall adapt the basic assumptions in [<xref ref-type="bibr" rid="scirp.66770-ref8">8</xref>] , detailed in Section 3, to a textile dyeing workstation.</p><sec id="s5_1"><title>5.1. Manufacturing Assumptions of the Textile Dyeing Operations</title><p>This section is an extension of Section 3.3, which estimates a station utilization of discrete systems.</p><p>Orders of type j, arrive at the system with given flow of weights, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x68.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x68.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x69.png" xlink:type="simple"/></inline-formula>(Kg/hour). Processing of an order is composed of a number of operations (jobs) to be performed in a given order by previously assigned stations (deterministic routing). Upon arrival, each order is routed to its initial station, where it is stored and waits for processing. Typically, the initial station is a dyeing workstation, the example here.</p><sec id="s5_1_1"><title>5.1.1. Dyeing Operations</title><p>- The dyeing operations are performed in batches, not exceeding the given manufacturing capacity of the dyeing machines. We assume that all dyeing machines have the same manufacturing capacity, G (kg/batch).</p><p>- A batch of type j is the maximal accumulated weight of type j orders in store, since the starting of the last batch, not exceeding the machine capacity, G.</p><p>- The average input flow of type j weights, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x70.png" xlink:type="simple"/></inline-formula>, is transformed into<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x70.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x71.png" xlink:type="simple"/></inline-formula>, the average input flow of type j batches, and is calculated as, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x70.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x71.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x72.png" xlink:type="simple"/></inline-formula>(batches/hour).</p><p>- A dyeing machine, m, has a batch processing duration, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x73.png" xlink:type="simple"/></inline-formula>, for processing operation k of type j order, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x74.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x75.png" xlink:type="simple"/></inline-formula>,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x76.png" xlink:type="simple"/></inline-formula>.</p><p>The duration of this operation is dependent on the required “basic dyeing operation”, such as washing, bleaching or dyeing to a specific shade as well as on the specific order attribute in terms of “fiber blend”.</p></sec><sec id="s5_1_2"><title>5.1.2. Evaluating the Utilization of the Dyeing Machines at Steady State Using TPN</title><p>Let <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x77.png" xlink:type="simple"/></inline-formula> be the contribution of<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x77.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x78.png" xlink:type="simple"/></inline-formula>, the input flow of type j batches, for possible multiple visits to station m.</p><disp-formula id="scirp.66770-formula825"><label>(10)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/3-7403140x79.png"  xlink:type="simple"/></disp-formula><p>for<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x80.png" xlink:type="simple"/></inline-formula>,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x81.png" xlink:type="simple"/></inline-formula>.</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x82.png" xlink:type="simple"/></inline-formula>is the given routing of batches j to machine m for performing operation k. It may assume a “0” or “1” value.</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x83.png" xlink:type="simple"/></inline-formula>is the number of operations of type j batches at machine m.</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x84.png" xlink:type="simple"/></inline-formula>is the expected processing duration of operation k of batch j at station m.</p><p>The total expected steady-state utilization r<sub>m</sub> of station m, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x85.png" xlink:type="simple"/></inline-formula>is the sum of its expected utilization by each class of customers to be served by the machine. Here these are the n different types of batches as determined by the given deterministic routing and eventually failures or other disturbances as an additional class of customers. As the batches replace the discrete part types in Section 3.3, the following equation is identical with Equation (8),</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x86.png" xlink:type="simple"/></inline-formula>.</p><p>Provided the constraint <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x87.png" xlink:type="simple"/></inline-formula> is satisfied for each<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x88.png" xlink:type="simple"/></inline-formula>, and all buffers are of unlimited size, the above equation is a valid expression of the TPN based expected steady state utilization<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x88.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x89.png" xlink:type="simple"/></inline-formula>, of any dyeing station m, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x88.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x89.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x90.png" xlink:type="simple"/></inline-formula>in the system.</p></sec></sec><sec id="s5_2"><title>5.2. An Example</title><p>The example is based on a real textile dyeing and finishing mill which performs about 25 - 30 specific processes. We have selected eight among these processes, whose accumulated input flow in kg/hour represents about 77% of the total input flow to the system.</p><sec id="s5_2_1"><title>5.2.1. Expected Utilization of the Dyeing Machines</title><p>The average overall input order rate is 2 orders per hour and the mean weight per order is 170 kg. Accordingly, the total input flow of weights of the selected processes to the first processing machine, which is a dyeing machine (DM) is 262 kg/hour. There are 10 DM machines assigned to the selected processes and the manufacturing capacity of each is G = 250 Kg.</p><p>A type j order arriving at a dyeing machine where its first operation (k = 1) will be performed, is characterized by its “basic dyeing operation” (washing, bleaching, pale shade or dark shade, i.e. four possibilities) and by its specific fiber blend (cotton/viscose, cotton/lycra, cotton/polyester, polyamide or acetate, i.e. five possibilities). The batch processing duration at any dyeing machine is dependent on the above combinations.</p><p>A type j batch comprises fabrics requiring the same type of basic operation and the same dyeing duration. Following this rule, eight types of batches were defined, each with a given weight flow <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x91.png" xlink:type="simple"/></inline-formula> (kg/hour) and given batch duration, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x92.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x93.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x93.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x94.png" xlink:type="simple"/></inline-formula>, see <xref ref-type="table" rid="table1">Table 1</xref>. Assuming that only one batch type is assigned to a machine, the results in <xref ref-type="table" rid="table1">Table 1</xref> show that for batches of type j, j = 1, 2, 3, 4, 5, 6 and 7, one machine is needed for each, whereas for j = 8, four machines are needed. The total number of machines needed becomes 11, while the total number of machines available for these processes is only 10. Hence, we have to assign more than one type of batch to a machine.</p><p>To switch from one basic dyeing operation to another requires a complete cleaning operation of the machine whose duration is 4 hours. To switch between fiber blends within the same basic dyeing operation requires partial cleaning whose duration is 2 hours. It is to be noted that j = 2, 3 need the same basic dyeing operation and so do j = 4, 5, 6 and j = 7, 8.</p><p>Considering these set-ups as additional types of customers, we shall calculate their contribution to the machine utilizations using Equation (8) as well.</p><p>To obtain a feasible planning solution to our problem (less than 11 machines) we have to select at least two batch types to be processed by the same machine while keeping the expected utilization of each machine below 1. Batch types 5 and 6, respectively allocated to machines 5 and 6, contribute to a low utilization of these two machines and they need only partial cleaning for switching, 2 hours.</p><p>Hence we may select batch types j = 5 and j = 6, to be performed by machine 5. The set-up duration for cleaning, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x95.png" xlink:type="simple"/></inline-formula>, has to be added to the respective processing duration of both batch type 5 and batch type 6.</p><p>Accordingly, the expected utilization of machine 5 is calculated as follows:</p><disp-formula id="scirp.66770-formula826"><graphic  xlink:href="http://html.scirp.org/file/3-7403140x96.png"  xlink:type="simple"/></disp-formula><p>In the same manner, we may further reduce the number of operating machines.</p></sec><sec id="s5_2_2"><title>5.2.2. Conclusion</title><p>In this example, we extended the TPN decomposition approach as applied to manufacturing systems of discrete items to accommodate conditions existing in textile processing systems. Under these conditions, the input to the system is through flows of orders. These were transformed into flows of batches, which now replace the flows of discrete items. The procedure also assists in planning the allocation of different types of batches to machines.</p><table-wrap id="table1" ><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> Machine utilizations by different batch types</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >j</th><th align="center" valign="middle" ><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x97.png" xlink:type="simple"/></inline-formula> kg/hour</th><th align="center" valign="middle" ><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x98.png" xlink:type="simple"/></inline-formula> batches j/hour</th><th align="center" valign="middle" ><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x99.png" xlink:type="simple"/></inline-formula> machine hours/batch j</th><th align="center" valign="middle" ><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/3-7403140x100.png" xlink:type="simple"/></inline-formula> machine hours/hour</th></tr></thead><tr><td align="center" valign="middle" >1</td><td align="center" valign="middle" >26.2</td><td align="center" valign="middle" >0.105</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >0.105</td></tr><tr><td align="center" valign="middle" >2</td><td align="center" valign="middle" >30.0</td><td align="center" valign="middle" >0.12</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >0.36</td></tr><tr><td align="center" valign="middle" >3</td><td align="center" valign="middle" >51.0</td><td align="center" valign="middle" >0.204</td><td align="center" valign="middle" >4</td><td align="center" valign="middle" >0.816</td></tr><tr><td align="center" valign="middle" >4</td><td align="center" valign="middle" >17.0</td><td align="center" valign="middle" >0.068</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >0.408</td></tr><tr><td align="center" valign="middle" >5</td><td align="center" valign="middle" >4.6</td><td align="center" valign="middle" >0.018</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >0.09</td></tr><tr><td align="center" valign="middle" >6</td><td align="center" valign="middle" >5.4</td><td align="center" valign="middle" >0.021</td><td align="center" valign="middle" >3.5</td><td align="center" valign="middle" >0.077</td></tr><tr><td align="center" valign="middle" >7</td><td align="center" valign="middle" >26.0</td><td align="center" valign="middle" >0.104</td><td align="center" valign="middle" >4.5</td><td align="center" valign="middle" >0.468</td></tr><tr><td align="center" valign="middle" >8</td><td align="center" valign="middle" >102</td><td align="center" valign="middle" >0.408</td><td align="center" valign="middle" >8.0</td><td align="center" valign="middle" >3.264</td></tr><tr><td align="center" valign="middle" >All</td><td align="center" valign="middle" >262</td><td align="center" valign="middle" >1.048</td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td></tr></tbody></table></table-wrap></sec></sec></sec><sec id="s6"><title>6. Discussion</title><p>The reviewed published papers showed that Petri nets are a versatile modeling structure. Section 2 of this paper presented the important extension of Petri nets to Timed Petri Nets (TPNs), which are able to time-base evaluate system performances. The section described in some details a technique for introducing time in Petri nets, by associating it with places. Section 3 showed how timed petri nets of open queuing networks were decomposed. Through decomposition, complex networks systems became easier to manage. Long run expected utilization of workstations at steady state, could be quickly calculated using decomposed TPNs. This enabled to use TPNs as a simulation verification method, as described in Section 4. The reviewed paper compared simulation results with TPN easily calculated estimates of stations utilizations. The low differences between the two techniques showed the advantages of TPNs as a simulation verification method. In the last presented paper, the decomposition approach to TPNs was applied to textile industry. Orders of different types are customary input to textile process- ing. The described procedure transformed the input flows of different types of orders into input flows of different types of batches, enabling to estimate the long run machines utilizations. The procedure also assisted in planning the allocation of different types of batches to operating machines.</p></sec><sec id="s7"><title>Cite this paper</title><p>Miryam Barad, (2016) Petri Nets—A Versatile Modeling Structure. Applied Mathematics,07,829-839. doi: 10.4236/am.2016.79074</p></sec></body><back><ref-list><title>References</title><ref id="scirp.66770-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Billington, J., Diaz, M. and Rozenberg, G. (1999) Application of Petri Nets to Communication Networks. Springer-Verlag, Berlin. http://dx.doi.org/10.1007/BFb0097770</mixed-citation></ref><ref id="scirp.66770-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Yakovlev, A., Gomes, L. and Lavagno, L. (2000) Hardware Design and Petri Nets. Kluwer, Boston. 
http://dx.doi.org/10.1007/978-1-4757-3143-9</mixed-citation></ref><ref id="scirp.66770-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Girault, C. and Valk, R. (2002) Petri Nets for Systems Engineering: A Guide to Modeling, Verification, and Applications. Springer-Verlag, Berlin.</mixed-citation></ref><ref id="scirp.66770-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Peterson, J.L. (1981) Petri Net Theory and the Modeling of Systems. Prentice Hall, Englewood Cliffs.</mixed-citation></ref><ref id="scirp.66770-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Sifakis, J. (1980) Performance Evaluation of Systems Using Nets, Net Theory and Applications. Springer-Verlag, New York.</mixed-citation></ref><ref id="scirp.66770-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Narahari, Y. and Viswanadham, N. (1985) A Petri Net Approach to the Modelling and Analysis of Flexible Manufacturing System. Annals of Operations Research, 3, 449-472. http://dx.doi.org/10.1007/BF02023780</mixed-citation></ref><ref id="scirp.66770-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Molloy, M.K. (1982) Performance Analysis Using Stochastic Petri Nets. IEEE Transactions on Computers, 31, 913-917. http://dx.doi.org/10.1109/TC.1982.1676110</mixed-citation></ref><ref id="scirp.66770-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple">Barad, M. (1994) Decomposing Timed Petri Nets of Open Queueing Networks. Journal of the Operational Research Society, 45, 1385-1397. http://dx.doi.org/10.1057/jors.1994.215</mixed-citation></ref><ref id="scirp.66770-ref9"><label>9</label><mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Sifakis</surname><given-names> J. </given-names></name>,<etal>et al</etal>. (<year>1977</year>)<article-title>Use of Petri Nets for Performance Evaluation</article-title><source> Acta Cybernetica</source><volume> 4</volume>,<fpage> 185</fpage>-<lpage>202</lpage>.<pub-id pub-id-type="doi"></pub-id></mixed-citation></ref><ref id="scirp.66770-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple">Barad, M. (2003) An Introduction to Petri Nets. International Journal of General Systems, 32, 565-582. 
http://dx.doi.org/10.1080/03081070310001623366</mixed-citation></ref><ref id="scirp.66770-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple">Barad, M. (1998) Timed Petri Nets as a Verification Tool. Proceedings of Winter Simulation Conference, Washington DC, 13-16 December 1998, Vol. 1, 547-554. http://dx.doi.org/10.1109/WSC.1998.745033</mixed-citation></ref><ref id="scirp.66770-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple">Shannon, R.E. (1981) Tests for the Verification and Validation of Computer Simulation Models. Proceedings of the Winter Simulation Conference, 573-577.</mixed-citation></ref><ref id="scirp.66770-ref13"><label>13</label><mixed-citation publication-type="other" xlink:type="simple">Sargent, R.G. (1991) Simulation Model Verification and Validation. Proceedings of the Winter Simulation Conference, Phoenix, 8-11 December 1991, 37-47. http://dx.doi.org/10.1109/wsc.1991.185589</mixed-citation></ref><ref id="scirp.66770-ref14"><label>14</label><mixed-citation publication-type="other" xlink:type="simple">Balci, O. (1994) Validation, Verification and Testing Techniques throughout the Life Cycle of a Simulation Study. Annals of Operations Research, 53, 121-173. http://dx.doi.org/10.1007/BF02136828</mixed-citation></ref><ref id="scirp.66770-ref15"><label>15</label><mixed-citation publication-type="other" xlink:type="simple">Kelton, W.D. (1989) Random Initialization Methods in Simulation. IIE Transactions, 21, 355-367. 
http://dx.doi.org/10.1080/07408178908966242</mixed-citation></ref><ref id="scirp.66770-ref16"><label>16</label><mixed-citation publication-type="other" xlink:type="simple">Kleijnen, J.P.C. (1995) Verification and Validation of Simulation Models. European Journal of Operational Research, 82, 145-162. http://dx.doi.org/10.1016/0377-2217(94)00016-6</mixed-citation></ref><ref id="scirp.66770-ref17"><label>17</label><mixed-citation publication-type="other" xlink:type="simple">Barad, M. and Cherkassky, A. (2009) Timed Petri Nets for Textile Batch Processing under Varying Input Characteristics. Proceedings of 20th ICPR, Shanghai, China.</mixed-citation></ref></ref-list></back></article>