Next Article in Journal
Reliability of a Wearable Motion Tracking System for the Clinical Evaluation of a Dynamic Cervical Spine Function
Next Article in Special Issue
Computation of Eigenvalues and Eigenfunctions in the Solution of Eddy Current Problems
Previous Article in Journal
Signal Processing and Machine Learning for Smart Sensing Applications
Previous Article in Special Issue
Data Acquisition Filtering Focused on Optimizing Transmission in a LoRaWAN Network Applied to the WSN Forest Monitoring System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Performance Optimization for a Class of Petri Nets

1
School of Electro-Mechanical Engineering, Shaanxi University of Science and Technology, Xi’an 710021, China
2
School of Electrical and Control Engineering, Shaanxi University of Science and Technology, Xi’an 710021, China
3
College of Electronic and Information Engineering, Heibei University, Baoding 071002, China
4
School of Electro-Mechanical Engineering, Xidian University, Xi’an 710071, China
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(3), 1447; https://doi.org/10.3390/s23031447
Submission received: 27 December 2022 / Revised: 19 January 2023 / Accepted: 21 January 2023 / Published: 28 January 2023
(This article belongs to the Special Issue Intelligent Monitoring, Control and Optimization in Industries 4.0)

Abstract

:
Petri nets (PNs) are widely used to model flexible manufacturing systems (FMSs). This paper deals with the performance optimization of FMSs modeled by Petri nets that aim to maximize the system’s performance under a given budget by optimizing both quantities and types of resources, such as sensors and devices. Such an optimization problem is challenging since it is nonlinear; hence, a globally optimal solution is hard to achieve. Here, we developed a genetic algorithm combined with mixed-integer linear programming (MILP) to solve the problem. In this approach, a set of candidate resource allocation strategies, i.e., the choices of the number of resources, are first generated by using MILP. Then, the choices of the type and the cycle time of the resources are evaluated by MILP; the promising ones are used to spawn the next generation of candidate strategies. The effectiveness and efficiency of the developed methodology are illustrated by simulation studies.

1. Introduction

Performance optimization in flexible manufacturing systems has received great attention in recent decades [1]. Such automated systems with synchronization, concurrency, and time delay can usually be modeled by timed marked graphs (TMGs), an important subclass of PNs that are proven to be useful in modeling manufacturing systems, queue systems, and railway transportation systems [2,3,4,5,6,7,8,9,10]. The performance of a system modeled with TMGs is usually characterized by the cycle time that represents the normalized time for one cycle of production. This issue was first studied in ordinary TMG (i.e., TMGs in which the weights on the arcs are unitary). In the literature, ordinary TMGs are simply called “TMGs” by omitting the term “ordinary”. The cycle time can be obtained by exploring the periodic dynamic evolution of a TMG [11]. On the other hand, the exact cycle time of a TMG can also be computed analytically by using the linear programming technique [12]. Algebraic approaches based on (max,+) or (min,+) algebra have also been applied for computing the cycle time of TMGs [13]. Based on these results, various methods have been developed for the performance optimization problems in TMGs, i.e., to minimize the total cost of the system’s resources (machines, devices, tasks, etc.) without compromising the desired level of throughput. The optimization targets include the initial resource allocation [14,15,16,17,18,19,20] and the server-type selection under a given budget [21,22,23].
Timed weighted marked graphs (TWMGs) are more general than ordinary TMGs and are useful in modeling systems with batch processes (i.e., instead of processing tasks one by one, they wait until a batch of tasks are available and process them simultaneously) [24,25]. Nevertheless, obtaining the exact cycle time of a TWMG is much more complicated than that of a TMG. In [26], the authors prove that for a given TWMG, the optimization of the server type is NP-hard. A widely used method for computing the cycle time of a TWMG is to first transform it into an equivalent TMG [27,28] followed by the linear programming technique in [12]. However, such a transformation is computationally heavy, initially marking-dependent, and usually yields a TMG much larger than the original TWMG. To overcome such a problem, in [29], a method is proposed to transform a TWMG (with an undetermined initial marking) into an equivalent parametric TMG so that the scale of the corresponding linear programming remains solvable. Some approximation methods [30] are also developed to estimate the upper bound of the cycle time of a TWMG. A linearization method for TWMGs to obtain linear representation in (min,+) was developed [31]. Based on the obtained linear model, the performance of the TWMGs can be analyzed.
The performance optimization problem in TWMGs is also more complex than that of TMGs. Relatively few works have been conducted on the performance optimization of TWMGs in the literature. Since the equivalent TMG classes of a TWMG is finite, by solving a mixed-integer linear programming problem (MILPP) for each equivalent TMG class, a globally optimal initial marking can be obtained [32,33]. Nevertheless, the computational load of this precise algorithm is unsatisfactory, since the number of equivalent TMG classes is exponential in the number of places in the corresponding TWMG. Therefore, people turn to hybrid algorithms, such as heuristics combined with simulation and MILPPs, which are fast and provide near-optimal solutions [34,35,36]. In [34], a TWMG is initialized with a sufficiently large initial marking so that the performance requirement is satisfied. Then, a greedy algorithm is applied to decrease the total cost in which tokens are iteratively removed until the cycle time reaches a lower bound threshold. A heuristic method combined with integer linear programming was proposed in [35]. However, both heuristics in [34,35] rely on the detection of the so-called critical places and, hence, a time-consuming simulation of the TWMG has to be performed in each iteration. This method is further improved in [36] in which the critical places are determined by linear programming, which greatly improves the efficiency of the heuristic algorithm. Computational efficient solutions for the performance optimization of TWMGs are still missing.
In practice, the execution time of a process may vary when different types of resources (machine, robot, transporting vehicle, etc.) are deployed. Therefore, the optimization of the types and quantities of resources, (so that the performances are maximized) has also received considerable attention in different areas, such as manufacturing systems [37,38,39] and enterprise systems [40]. However, as far as we know, no work has been done on such a problem in TWMGs. Solving this problem is challenging since it is a nonlinear quadratic optimization (which we will see in Section 3) and, thus, a globally optimal solution is hard to achieve. The search space for selecting the types and quantities of resources is quite huge even though the system size is small.
In this paper, we explore the performance optimization problem in TWMGs where both quantities and types of resources are simultaneously optimized. The exact value of the cycle time of TWMGs is efficiently evaluated by using linear algebraic methods. Precisely speaking, our aim is to minimize the cycle time of a given TWMG subject to a given budget limit, while both quantities and types of resources are variables.
The main contribution of this work is summarized as follows. We developed a hybrid method that is a genetic heuristic combined with MILP. Initially, a set of candidate resource allocation strategies, i.e., the choices of the number of resources, are first generated by solving a MILPP. Then, among all of the possible types of resources whose numbers grow exponentially with respect to the system size, we originally developed a MILPP to determine the optimal one. This was done by transforming the determined TWMG of the candidate strategy into an equivalent TMG with parametric firing delays. In the latter, a MILPP was applied to compute its cycle time and the gross cost (scored as fitness). The promising strategies, i.e., those with high fitness, were used to spawn the next generation of candidate strategies. The procedure above was repeated for a pre-set number of generations, and eventually, a near-optimal resource allocation strategy was obtained. Simulation results show that the developed approach can provide a good trade-off between the near-optimality of the solution and the computational load.
This paper is structured as follows. The basic concepts used in this paper are discussed in Section 2. Section 3 formulates the performance optimization problem studied in this paper. In Section 4, a genetic algorithm-based approach is presented. Simulation studies are investigated in Section 5. Conclusions and future work are presented in Section 6.

2. Background

2.1. Generalities

A PN is a 4-tuple N = ( P , T , Pre , Post ) , where P is a set of n places; T is a set of m transitions; Pre : P × T N and Post : P × T N are the pre- and post-incidence functions that specify the arcs, respectively, and are also denoted by matrices in N n × m , where N = { 0 , 1 , 2 , } ; C = Post Pre Z n × m is the incidence matrix, where Z = { 0 , ± 1 , ± 2 , } . A PN is said to be ordinary when all of its arc weights are unitary, i.e., Pre , Post { 0 , 1 } n × m .
A vector y = ( y 1 , y 2 , , y n ) T N n (resp., x = ( x 1 , x 2 , , x m ) T N m ) such that y 0 and y T · C = 0 (resp., x 0 and C · x = 0 ) is a P-semiflow (resp., T-semiflow). The support of a P-semiflow (resp., T-semiflow) is defined by y = { p i P y i > 0 } (resp., x = { t i T x i > 0 } ). A P-semiflow y (resp., T-semiflow x ) is minimal if (i) y (resp., x ) is not a superset of the support of any other P-semiflow (resp., T-semiflow), and (ii) all y i , y j (resp., x i , x j ) where i j are mutually prime.
The set of output (resp., input ) places of transition t i T is defined as t i = { p P P o s t ( p , t i ) > 0 } (resp., t i = { p P P r e ( p , t i ) > 0 } ). The notions for p and p are analogously defined.
A marking is a mapping M : P N that assigns to each place of a PN a non-negative integer number of tokens, which is also described as an n-component vector M N n . The number of tokens of place p at marking M is denoted by M ( p ) . A Petri net system N , M 0 is a net N with an initial marking M 0 .
A weighted marked graph (WMG) is a PN in which each place has exactly one input and one output transition. A marked graph (MG) is a WMG whose weights on arcs are unitary.
Given a PN N, a path is a sequence of nodes o 1 o 2 o q where o i P T for all i { 1 , , q } and o i + 1 o i holds for all i { 1 , , q 1 } . A PN is said to be strongly connected if, for any o , o P T , there exists a path from o to o . A path o 1 o 2 o q is a circuit if o 1 = o q . A circuit o 1 o 2 o q 1 o 1 is an elementary circuit, denoted by γ , if for all i , j { 1 , , q } , i j indicates  o i o j . The set of all elementary circuits of N is denoted by  Γ .
A WMG is neutral if for each elementary circuit γ it holds that p j γ P r e ( p j , p j ) P o s t ( p j , p j ) = 1 . In the rest of this paper, we limit our study to neutral and strongly connected WMGs.

2.2. Timed Petri Nets

In the literature, two types of timed Petri nets (TPNs) [41] are mainly studied, namely transition-timed PNs (TTPNs) and place-timed PNs (PTPNs) [42]. A transition-timed Petri net is a pair N d = ( N , δ ) where
  • N = ( P , T , Pre , Post ) is a PN;
  • δ = [ δ ( t 1 ) , δ ( t 2 ) , , δ ( t m ) ] T Q 0 m is an m-component vector, called the firing delay vector of N d , which assigns a non-negative rational value to each transition to represent its firing delay, where Q denotes the set of rational numbers.
For a PTPN, a non-negative rational duration δ ( p ) is assigned to each place p to represent the residual time that a token must spend in p before it becomes available for its output transitions.
Given a TTPN N d = ( N , δ ) , the enabling degree of a transition t logically enabled at a marking M , denoted as e n ( M , t ) , is the largest integer r, such that r · Pre ( · , t ) M . The TTPNs considered in this paper follow the so-called infinite server semantics [42]. In plain words, each transition represents an operation that can be executed as many times as the number of available servers, i.e., each enabled transition can fire as many times as its enabling degree.
A TTPN ( N , δ ) is called a TWMG if net N is a weighted marked graph. A TWMG system is a triple G = N , δ , M 0 , where ( N , δ ) is a TWMG and M 0 is an initial marking.

2.3. Cycle Time of TWMGs

The cycle time of a TWMG system G = N , δ , M 0 , denoted by χ ( G ) , is the average period to fire one time the minimal T-semiflow x = [ x 1 , , x m ] [28,34]. The steady evolution of a strongly connected TWMG system is repetitive. Let f i denote the firing frequency of transition t i during the repetitive period. Then, the cycle time of a TWMG system G = N , δ , M 0 can be defined as:
χ ( G ) = x i f i , t i T .
We denote by χ γ ( G ) the cycle time of elementary circuit γ and by χ γ * ( G ) = max γ Γ χ γ ( G ) the critical time. For a TMG system, the cycle time is equal to the critical time, i.e.,
χ ( G ) = χ γ * ( G ) .
However, for a TWMG system, reference [35] shows that the cycle time is greater than or equal to the critical time, i.e.,
χ ( G ) χ γ * ( G ) .
The cycle time of a TWMG can be determined by the simulation. The work of [12,30] provides a lower bound and an upper bound of the cycle times that are easy to compute. However, in general, such approximations may be far from the actual cycle time and, hence, cannot be used as guidelines for performance optimization. On the other hand, a TWMG system G = N , δ , M can be transformed into an equivalent place-timed marked graphs (PTMGs) system G ^ = N ^ , δ ^ , M ^ as shown in Algorithm 1, which describes the same behavior, transition firing language, and cycle time [28]. Then, the cycle time χ ( G ) of the original TWMG system can be obtained by solving the following linear programming problem (LPP) for the equivalent PTMG system G ^ [12,33]:
min χ ( G ^ ) s . t . C ^ · α + χ ( G ^ ) · M ^ D p · Post ^ · v
where χ ( G ) = χ ( G ^ ) R + , α R m ^ , v = 1 m ^ × 1 is the visit ratio vector, and D p N n ^ × n ^ is a diagonal matrix such that
D p ( i , j ) = δ ^ ( p i ) , if i = j , 0 , otherwise .
Note that t i n ( p j ) , t o u t ( p j ) , · , and · in Algorithm 1 represent the unique input transition of place p j , the unique output transition of place p j , the floor operator, and the ceiling operator, respectively.
Algorithm 1 Transformation of a TWMG into a PTMG [12].
  • Input: A TWMG system G = N , δ , M and the minimal T-semiflow x = ( x 1 , , x m ) T of net N;
  • Output: An equivalent PTMG system G ^ = N ^ , δ ^ , M ^ such that χ ( G ^ ) = χ ( G ) ;
  • for each transition t i T do
  •      delete t i and its corresponding arcs;
  •     add x i transitions t i 1 , t i 2 , , t i x i and x i places q i 1 , q i 2 , , q i x i such that q i a = t i a , q i a = t i a mod x i + 1 , a = 1 , , x i ;
  •     
    let M ^ ( q i 1 ) = M ^ ( q i 2 ) = = M ^ ( q i x i 1 ) : = 0 , M ^ ( q i x i ) : = 1 , δ ^ ( q i 1 ) = δ ^ ( q i 2 ) = = δ ^ ( q i x i ) : = 0 .
  • end for
  • for each place p j P begin do
  •     delete p j and its corresponding arcs;
  •     let a : = 0 , s : = 1 ;
  •     repeat
  •         
    b : = M ( p j ) + P o s t ( p j , t i n ( p j ) ) · a P r e ( p j , t o u t ( p j ) ) + 1
    a : = P r e ( p j , t o u t ( p j ) ) · b M ( p j ) P o s t ( p j , t i n ( p j ) )
  •         if  a x i n ( p j ) then
  •            Add place p j s such that p j s = t i n ( p j ) a , p j s = t o u t ( p j ) ( b 1 ) mod x o u t ( p j ) + 1
  •            
    M ^ ( p j s ) : = b 1 x o u t ( p j )
    δ ^ ( p j s ) : = δ ( t i n ( p j ) )
  •            
    n j : = s
  •             s : = s + 1
  •         end if
  •     until  a x i n ( p j )
  • end for

3. Problem Statement

In a TWMG that models a practical system, each transition t i models an operation performed by machines, robots, etc., which we call the servers. A server is modeled by a server place p s i self-looped with t i . We consider the performance optimization problem in TWMGs where both quantities and types of servers are variables to be simultaneously optimized. Precisely speaking:
  • For each transition, t i with k i N > 0 choices of server types, we use a k i -component binary vector Z i = [ Z i ( 1 ) , Z i ( 2 ) , , Z i ( k i ) ] T { 0 , 1 } k i to describe the server type selection of it, where
    Z i ( j ) = 1 , the j -th type of server is selected , 0 , otherwise .
    Moreover, to ensure that the operation is consistent, we require that—among all of the k i types of servers of transition t i —only one type can be selected, i.e.,    
    Z i ( 1 ) + Z i ( 2 ) + + Z i ( k i ) = 1
  • For each transition t i , different servers have different performances (i.e., the firing delay) and costs. We use δ ( t i , j ) and λ ( t i , j ) ( j { 1 , , k i } ) to denote the firing delay and the unit cost of server type j, respectively. We denote the firing delay vector of transition t i and the unit cost vector of transition t i by δ ( t i ) = [ δ ( t i , 1 ) , δ ( t i , 2 ) , , δ ( t i , k i ) ] T Q 0 k i , and λ ( t i ) = [ λ ( t i , 1 ) , λ ( t i , 2 ) , , λ ( t i , k i ) ] T Q 0 k i , respectively.
  • For each transition t i , we use M ( p s i ) to denote the server quantity of it, i.e., the number of servers to equip. Then, we use M = [ M ( p s 1 ) , M ( p s 2 ) , , M ( p s m ) ] T N m to represent the server quantity of all servers in the gross TWMG system.
Therefore, the firing delay δ ( t i ) and the unit cost λ ( t i ) of transition t i are determined by the following equation:
λ ( t i ) = Z i T · λ ( t i ) , δ ( t i ) = Z i T · δ ( t i ) , Z i ( 1 ) + Z i ( 2 ) + + Z i ( k i ) = 1 , i = 1 , , m .
Moreover, the choices of server types and quantities must be subject to a given budget limit R R . Then, we can formulate the performance optimization problem as the following.
Problem 1 
(Performance optimization problem). Given a TWMG model N, a budget R R , a unit cost vector λ ( t i ) , and a firing delay vector δ ( t i ) , determine a server-type selection Z i = [ Z i ( 1 ) , Z i ( 2 ) , , Z i ( k i ) ] T and a server quantity M = [ M ( p s 1 ) , M ( p s 2 ) , , M ( p s m ) ] T , such that λ T · M R while the cycle time χ ( G ) is minimized (i.e., the performance is maximized).
In plain words, solving Problem 1 is equivalent to solving the following optimization problem
min χ ( G ) s . t . λ T · M R , ( 11 a ) λ ( t i ) = Z i T · λ ( t i ) , δ ( t i ) = Z i T · δ ( t i ) , Z i ( 1 ) + Z i ( 2 ) + + Z i ( k i ) = 1 , i = 1 , , m , ( 11 b )
where
  • χ ( G ) represents the cycle time of the TWMG system G = N , δ , M ,
  • λ = [ λ ( t 1 ) , , λ ( t m ) ] T represents the cost vector of the TWMG,
  • M = [ M ( p s 1 ) , , M ( p s m ) ] T is the server quantity of the TWMG,
  • δ = [ δ ( t 1 ) , , δ ( t m ) ] T is the firing delay vector of the TWMG.
However, we note that solving this problem is challenging since it is a quadratic optimization: in general, a globally optimal solution is hard to achieve. Therefore, in the next section, we develop a hybrid method composed of genetic heuristics and MILP. The following example will be used as a running example in the sequel of this paper.
Example 1. 
Consider the TWMG model N depicted in Figure 1 that represents a cyclic manufacturing system. It is composed of two different operations performed by machines MA 1 and MA 2 , respectively. Transitions t 1 and t 2 represent the operation performed by machines MA 1 and MA 2 , respectively. Place p 1 is an idle place that represents the raw material to proceed, place p 2 is an activity place that represents the manufacturing process, and places p s 1 and p s 2 are the server places corresponding to t 1 and t 2 , respectively. Tokens in places p s 1 and p s 2 represent the numbers of machines MA 1 and MA 2 , respectively. Initially, there are one hundred raw materials to be proceeded, i.e., M ( p 1 ) = 100 , and no semi-products are being produced, i.e., M ( p 2 ) = 0 .
Assume that we have k 1 = 3 , k 2 = 2 , i.e., transition t 1 has three choices of server types and transition t 2 has two choices. The firing delay and the unit cost of each type choice are listed in Table 1.
λ ( t 1 ) = [ λ ( t 1 , 1 ) , λ ( t 1 , 2 ) , λ ( t 1 , 3 ) ] T = [ 4 , 10 , 15 ] T , λ ( t 2 ) = [ λ ( t 2 , 1 ) , λ ( t 2 , 2 ) ] T = [ 5 , 9 ] T , δ ( t 1 ) = [ δ ( t 1 , 1 ) , δ ( t 1 , 2 ) , δ ( t 1 , 3 ) ] T = [ 15 , 4 , 2 ] T , δ ( t 2 ) = [ δ ( t 2 , 1 ) , δ ( t 2 , 2 ) ] T = [ 20 , 18 ] T .
The performance optimization problem (11) is to determine the quantities of servers of transitions M = [ M ( p s 1 ) , M ( p s 2 ) ] T and the server-type selections Z 1 = [ Z 1 ( 1 ) , Z 1 ( 2 ) , Z 1 ( 3 ) ] and Z 2 = [ Z 2 ( 1 ) , Z 2 ( 2 ) ] subject to a given budget R so that the cycle time of the system is minimized.

4. Genetic MILP Approach for Performance Optimization in TWMGs

Due to the existence of weights on arcs of the TWMGs and the nonlinear constraint (11a), it is quite difficult to find an analytical approach to solve problem (11). Hence, in this section, we develop a hybrid method composed of genetic heuristics and mixed-integer linear programming, which makes the problem solvable.
As mentioned before, a possible server allocation strategy consists of two parts ( M , Z ) where M characterizes the choice of the quantity while Z = ( Z 1 , , Z m ) characterizes the choice of the server type. In our method, the two parts are optimized in an alternative manner. For small systems, it could be possible to enumerate the server type Z first and determine the quantity M subsequently. However, it is not possible for practical systems even with medium sizes. In addition, it was shown in [33] that for a TWMG whose server type Z is given, the optimal quantity M can be obtained by transforming it into a finite number of equivalent PTMG classes and solving a MILPP for each equivalent class. The computational cost of this approach is high since the number of equivalent PTMG classes increases exponentially w.r.t. the number of places of the original TWMG. In practice, it is inefficient to solve the performance optimization in TWMGs by exploring all the equivalent PTMGs.
In this paper, the quantity-component M , i.e., the initial token distribution for server places in the TWMG, is first treated as a chromosome in the genetic heuristics. Then, among all the possible server types Z whose number grows exponentially with respect to the system size, we originally develop a MILPP to determine the optimal one. Therefore, the computational cost can be reduced significantly compared with the existing methods in [33]. Moreover, the result from the MILPP is also used to score the chromosome, i.e., the fitness of the quantity–component M , which provides a guideline for generating the next generation of candidate chromosomes. This alternated optimization is done when a pre-given number ( G e ) that represents the maximum number of generation is reached. The main steps of the approach are sketched in the flow chart in Figure 2.
In the following subsections, we will discuss the main elements of the developed approach:
  • Coding and decoding;
  • Initial population generation;
  • Calculation of the objective function and fitness value;
  • The overall genetic algorithm: selection, crossover, and mutation.

4.1. Coding and Decoding

A server allocation strategy (i.e., server quantity) M can be coded as a chromosome Chm that is an m-dimensional nonnegative integer vector such that
Chm = [ e 1 , e 2 , , e m ] T = M ,
where e i represents the quantities of servers of transition t i , i.e., the number of tokens in the server place p i s . For instance, the chromosome of the TWMG model N depicted in Figure 1 can be expressed as Chm = [ e 1 , e 2 ] T , where e 1 = M ( p 1 s ) and e 2 = M ( p 1 2 ) . Therefore, we can decode Chm into a marking M Chm = [ 4 , 0 , e 1 , e 2 ] T of the TWMG model.

4.2. Population Generation and Feasibility Screening

In each iteration in the genetic algorithm, a set of candidate chromosomes are generated from promising ones in the previous generation. However, not all of the newly generated chromosomes—in our case the initial server distribution—are feasible. For example, some initial server distribution may result in the system eventually dying. Hence, a pre-screening step is performed to remove such unfeasible chromosomes from the pool of candidates.
First, a marking M Chm that is decoded by a chromosome Chm should guarantee the liveness of a TWMG. A TWMG is live if and only if each elementary circuit is live [24]. Hence, a feasible chromosome necessarily satisfies the following condition:
( γ Γ ) y T · M Chm > y T · M D γ
where y is the minimal T-semiflow corresponding to γ and M D γ = [ P r e ( p 1 , p 1 ) 1 , , P r e ( p n , p n ) 1 ] T is a marking restricted to γ .
On the other hand, a chromosome Chm is feasible only if there exists at least one server-type selection Z i = [ Z i ( 1 ) , , Z i ( k i ) ] for every transition t i T , such that the total cost of servers does not beyond the budget R. This indicates that the following constraint is necessarily feasible:
λ T · M R , M = Chm , λ ( t i ) = Z i T · λ ( t i ) , Z i ( 1 ) + Z i ( 2 ) + + Z i ( k i ) = 1 ,
Combining the results in (13) and (14), both the liveness and feasibility of a chromosome Chm can be guaranteed by the following constraints:
y · M Chm > y · M D γ , γ Γ , λ T · M R , M = Chm , λ ( t i ) = Z i T · λ ( t i ) , Z i ( 1 ) + Z i ( 2 ) + + Z i ( k i ) = 1 ,
where M Chm is a marking decoded from chromosome Chm .

4.3. Objective Function and Fitness Score: A MILPP Approach

Given a chromosome Chm and its decoded marking M Chm of a TWMG model N, we aim to determine the optimal server-type selection Z = ( Z 1 , , Z m ) , such that the cycle time χ ( G ) of the TWMG system G = N , δ , M Chm is minimized while the cost of the servers corresponding to ( M , Z ) do not exceed the budget R.
As we discussed in Section 2.3, a TWMG system G = N , δ , M Chm with a known initial marking M Chm can be transformed into an equivalent PTMG system G ^ = N ^ , δ ^ , M ^ C h m with the same cycle time. Hence, the cycle time χ ( G ) of G can be obtained by solving LPP (2) for its equivalent PTMG system G ^ . Note that here the firing delay vector δ = [ δ ( t 1 ) , , δ ( t m ) ] T of G is dependent on the server-type selection Z which is undetermined yet. Hence, the firing delays in the corresponding equivalent PTMG system G ^ δ ^ = [ δ ^ ( p 1 ) , , δ ^ ( p n ^ ) ] is also to be determined. Now we show such an optimal server-type selection can be obtained by solving a MILPP for the equivalent PTMG.
Proposition 1. 
Given a performance optimization problem (11) for a TWMG system G whose equivalent PTMG system is G ^ , let ( χ ( G ^ ) , α , λ , δ , δ ^ , D p , Z i ) be the optimal solution of the following MILPP:
min χ ( G ^ ) s . t . C ^ · α + χ ( G ^ ) · M ^ Chm D p · Post ^ · v , ( 16 a ) λ T · M R , M = Chm , ( 16 b ) λ ( t i ) = Z i T · λ ( t i ) , δ ( t i ) = Z i T · δ ( t i ) , ( 16 c ) Z i ( 1 ) + Z i ( 2 ) + + Z i ( k i ) = 1 , ( 16 d ) i = 1 , , m , ( 16 e ) δ ^ ( q i a ) = 0 , a = 1 , , x i , δ ^ ( p j s ) = δ ( t q ) , p j = t q , s = 1 , , n j ( 16 f )
Then, Z i ( i = 1 , , m ) is an optimal server-type selection of problem (11) with respect to a given server quantity M = Chm .
Proof. 
Constraint (16b) ensures that the choice of server types subject to server quantity M = Chm does not exceed the budget R. Constraints (16c), (16d), and (16e) jointly enforce Equation (10). Combining the results in Equations (2) and (6), constraint (16f) ensures the correctness of the firing delay equivalence between the original TWMG and the PTMG. According to the results in [12,33], constraint (16a) can provide an optimal solution for performance optimization if C ^ and M Chm are given. Therefore, Z i ( i = 1 , , m ) is an optimal server-type selection of problem (11) restricted to a given server quantity M = Chm .    □
Given a chromosome Chm , the cycle time χ ( G ^ ) in the optimal solution of MILPP (16) is denoted as F ( M C h m ) = χ * . Let N i denote the pool of chromosomes in the i-th iteration, i.e., the i-th generation, we define
F m i n = min Chm N i F ( Chm )
and
F m a x = max Chm N i F ( Chm )
the minimum and maximum objective functions (i.e., cycle time) of the population in the current generation, respectively. Then, the fitness of a chromosome Chm is defined as
f i t n e s s ( Chm ) = 1 F ( Chm ) F m i n F m a x F m i n
Example 2. 
Let us consider again the TWMG model N discussed in Example 1 with a minimal T-semiflow x = [ 3 , 2 ] T and a chromosome Chm = [ 4 , 5 ] T . Then, the decoded initial marking is M C h m = [ 100 , 0 , 4 , 5 ] T . The equivalent PTMG system G ^ = N ^ , δ ^ , M ^ C h m corresponding to M C h m is shown in Figure 3, where the firing delay vector δ ^ is to be determined.
Let R = 100 be the budget limit. According to Proposition 1, a MILPP can be established as shown in Equation (18). By solving MILPP (18), we obtain Z = ( Z 1 , Z 2 ) where Z 1 = [ 0 , 1 , 0 ] T and Z 2 = [ 0 , 1 ] T . Thus, to optimize the performance of the PTMG (which is equal to that of the original TWMG), transition t 1 should be equipped with the second type of server while transition t 2 should be equipped with the second type. The optimal cycle time χ ( G ) = χ ( G ^ ) = 7.2 of the TWMG system G = N , , δ , M Chm . Finally, the objective function of chromosome Chm = [ 4 , 5 ] T is F ( Chm ) = 7.2 , and its fitness can be computed according to Equation (17).
min χ ( G ^ ) s . t . C ^ · α + χ ( G ^ ) · M ^ Chm D p · Post ^ · v , λ T · M R , M = Chm , λ ( t 1 ) = Z 1 ( 1 ) · λ ( t 1 , 1 ) + Z 1 ( 2 ) · λ ( t 1 , 2 ) + Z 1 ( 3 ) · λ ( t 1 , 3 ) , δ ( t 1 ) = Z 1 ( 1 ) · δ ( t 1 , 1 ) + Z 1 ( 2 ) · δ ( t 1 , 2 ) + Z 1 ( 3 ) · δ ( t 1 , 3 ) , λ ( t 2 ) = Z 2 ( 1 ) · λ ( t 2 , 1 ) + Z 2 ( 2 ) · λ ( t 2 , 2 ) , δ ( t 2 ) = Z 2 ( 1 ) · δ ( t 2 , 1 ) + Z 2 ( 2 ) · δ ( t 2 , 2 ) , Z 1 ( 1 ) + Z 1 ( 2 ) + Z 1 ( 3 ) = 1 , Z 2 ( 1 ) + Z 2 ( 2 ) = 1 , i = 1 , 2 , δ ^ ( q 1 1 ) = 0 , δ ^ ( q 1 2 ) = 0 , δ ^ ( q 1 3 ) = 0 , δ ^ ( q 2 1 ) = 0 , δ ^ ( q 2 2 ) = 0 , δ ^ ( p 1 1 ) = δ ( t 2 ) , δ ^ ( p 1 2 ) = δ ( t 2 ) , δ ^ ( p 2 1 ) = δ ( t 1 ) , δ ^ ( p 2 2 ) = δ ( t 1 ) , δ ^ ( p s 1 1 ) = δ ( t 1 ) , δ ^ ( p s 1 2 ) = δ ( t 1 ) , δ ^ ( p s 1 3 ) = δ ( t 1 ) , δ ^ ( p s 2 1 ) = δ ( t 2 ) , δ ^ ( p s 2 2 ) = δ ( t 2 ) ,

4.4. The Overall Genetic Algorithm

Now we are ready to introduce the overall genetic algorithm in our approach.

4.4.1. Selection

The purpose of the selection operation is to save chromosomes with higher fitness values in the parent population and to eliminate chromosomes with low fitness values. The selection rule we used here combines the classical roulette wheel selection [43] (also called the proportional selection, which ensures the diversity of genes inherited by the next generation) and the optimal retention [43] (that can effectively retain the optimal individual of each generation). In a roulette selection, the probability of each chromosome Chm to be selected is proportional to its fitness value f i t n e s s ( Chm ) . In generation i with population N i , the probability of selecting a chromosome C h m is given by:
P r o b ( Chm i ) = f i t n e s s ( Chm ) Chm j N i f i t n e s s ( Chm j ) .
Note that it may eliminate chromosomes with large fitness values during the roulette wheel selection operation. Therefore, we retain the chromosome with the highest fitness value through the optimal retention method before the roulette wheel selection operation.

4.4.2. Crossover

In the genetic algorithm, new chromosomes are generated through the crossover operation by exchanging gene segments from two parent chromosomes to find better offspring. In the literature, several crossover operations have been proposed, such as single-point crossover, multi-point crossover, and uniform crossover [43]. In this paper, we used a single-point crossover operation for the genetic algorithm.

4.4.3. Mutation

The mutation operation is to randomly—usually with a pre-set probability—perturb one or several genes of a chromosome. The mutation operation is of great significance in the genetic algorithm to maintain population diversity, prevent falling into the local optimal solution, and enrich the gene pool. The mutation operation uses site mutation, i.e., one or more genes of a chromosome are randomly selected and changed with a mutation probability. In this paper, we use the single-point mutation operation, i.e., at most one gene in each chromosome is mutated for each operation.
Note that during the crossover operation and mutation operation, a newly generated chromosome Chm may not always satisfy the constraints in Equation (15), i.e., the TWMG may not be live at the decoded marking M Chm , or the total cost of servers corresponding to M Chm exceeds the budget. In such a case, the chromosome that leads to an infeasible solution is immediately discarded, and a fully randomized chromosome, which satisfies the constraint (15) is added to the pool.
The entire hybrid method that combines genetic heuristics with MILP is presented as Algorithm 2, whose inputs are: a TWMG model N, the budget R, the unit cost vector λ ( t i ) , the firing delay vector δ ( t i ) , the population size N p (i.e., N ), the maximum number of generations G e , the crossover probability P c , and the mutation probability P m .
Algorithm 2 Genetic MILP method for performance optimization in TWMGs.
  • Input: A TWMG model N, R R , λ ( t i ) Q 0 m , δ ( t i ) Q 0 m , N p N , G e N , P c R 0 , P m R 0 , T 0 R 0 , T e R 0 , and ε R 0 ;
  • Output: Server-type selection Z = [ Z 1 , , Z m ] T and server quantity M = [ M ( p s 1 ) , , M ( p s m ) ] T ;
  • while k G e  do
  •     for  j = 1 , , N p do
  •         Transform N , M Chm j k into N ^ , M ^ Chm j k according to Algorithm 1;
  •         Solve MILPP (16) for N ^ , M ^ Chm j k ;
  •         Calculate f i t n e s s ( Chm j k ) according to Equation (17);
  •     end for
  •     Let j * = a r g max Chm j k N k f i t n e s s ( Chm j k ) ;
  •     Let M : = M C h m j * k be the server quantity and Z : = ( Z 1 , , Z m ) be the server type selection corresponding to chromosome Chm j * k ;
  •     if k + 1 G e then
  •         k : = k + 1 ;
  •         Execute selection, crossover, and mutation to generate an offspring generation N k = { Chm 1 k , , Chm N p k } ;
  •     else
  •         Output M and Z
  •     end if
  • end while

5. Illustrative Examples

In this section, the developed approach in Section 4 is illustrated by investigating the TWMG model discussed in Example 1 and a real flexible manufacturing system. The algorithms are implemented by MATLAB 2017 with YALMIP R20181012 subroutines on a computer installed Windows 10 operating system with CPU Intel Core i5 at 3.0 GHz and RAM 8 GB.

5.1. First Example

Example 3. 
Let us continue Example 1 and assume that the upper bound on the cost of servers is R = 100 . Parameters in the developed approach are set as the population size N p = 10 , the crossover probability P c = 0.7 , and the mutation probability P m = 0.1 .
In Table 2, we show the best solution (i.e., the minimal cycle time), the worst solution (i.e., the maximal cycle time), the average solution, and the average CPU time for the developed approach (i.e., genetic MILP) by testing a different maximum number of generations G e . For each generation, we executed the developed approach ten times. An optimal/suboptimal solution is found as follows:
M = [ 2 , 14 ] T , Z 1 = [ 0 , 0 , 1 ] T , Z 2 = [ 1 , 0 ] T ,
which means that the optimal quantity of server of t 1 and t 2 are 2 and 14, respectively, while the third type of server of t 1 and the first type of server of t 2 are selected. By enumerating all possible server-type selections and server quantities, we found that the solutions obtained by the proposed approach are optimal. In addition, we also implemented the developed approach without MILP (i.e., genetic in Table 2), which means that both quantities and types of servers are generated by the genetic algorithm. It can be observed that the qualities of the solutions are improved by using the MILP we developed.

5.2. Application to a Real Flexible Manufacturing System

In this subsection, we apply the developed approach to a hydraulic torque converter production line that is taken from [36]. The hydraulic torque converter is assembled with four different products as shown in Table 3. The production process of these products include 25 operations operated on 17 different machines (denoted by MA 1 , , MA 17 ). We mention that the turbine is also assembled by two different products. Note that some machines are shared by one or more production lines, such as MA 1 , MA 3 , MA 4 , and MA 6 .
The TWMG model is shown in Figure 4, which has 25 transitions and 54 places. It is composed of three different types of elementary circuits, i.e., process circuits that represent the manufacturing process, server circuits that represent the usage of machines, and mixed circuits that consist of both process circuits and server circuits. Tokens in places p 1 , p 8 , p 13 , p 20 , and p 24 represent the raw materials for each production line that are assumed to be 1000, i.e., M ( p j ) = 1000 ( j = 1 , 8 , 13 , 20 , 24 ).
In Table 4, we present the unit costs of servers and the firing delays of the corresponding transitions. The budget is set to R = 300 . Simulation results for different cases are presented in Table 5. Parameters in the developed approach are the same as in Example 3.
For all of the cases, we execute each approach ten times. Since the best solution for the maximum number of generations G e = 5 is identical to the solution obtained for generation G e = 10 , there is no need to test more generations for the genetic MILP approach. An optimal/suboptimal solution is found by the developed approach with the cycle time χ ( G ) = 68 , and the server-type selection and server quantity are as follows:
M = [ 1 , 1 , 1 , 2 , 1 , 1 , 2 , 1 , 2 , 1 , 1 , 2 , 1 , 2 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 ] T , Z 1 ( 1 ) = 1 , Z 2 ( 1 ) = 1 , Z 3 ( 3 ) = 1 , Z 4 ( 1 ) = 1 , Z 5 ( 1 ) = 1 , Z 6 ( 5 ) = 1 , Z 7 ( 1 ) = 1 , Z 8 ( 1 ) = 1 , Z 9 ( 3 ) = 1 , Z 10 ( 1 ) = 1 , Z 11 ( 3 ) = 1 , Z 12 ( 1 ) = 1 , Z 13 ( 5 ) = 1 , Z 14 ( 1 ) = 1 , Z 15 ( 1 ) = 1 , Z 16 ( 2 ) = 1 , Z 17 ( 1 ) = 1 , Z 18 ( 1 ) = 1 , Z 19 ( 1 ) = 1 , Z 20 ( 2 ) = 1 , Z 21 ( 1 ) = 1 , Z 22 ( 1 ) = 1 , Z 23 ( 5 ) = 1 , Z 24 ( 3 ) = 1 , Z 25 ( 1 ) = 1 .
Note that due to the shared usage of resources, some different operations (transitions) are executed by the same machine MA i ( i = 1 , 3 , 4 , 6 ). Therefore, the server quantities of machine MA i equals the sum of the server quantities of all the transitions corresponding to MA i ; the server types of all the transitions corresponding to MA i should be identical.
Server quantity of MA 1 : M ( p s 1 ) + M ( p s 7 ) + M ( p s 17 ) = 4 , Server quantity of MA 3 : M ( p s 3 ) + M ( p s 9 ) + M ( p s 11 ) = 4 , Server quantity of MA 4 : M ( p s 4 ) + M ( p s 18 ) + M ( p s 21 ) = 4 , Server quantity of MA 6 : M ( p s 6 ) + M ( p s 13 ) + M ( p s 23 ) = 2 .
From the simulation results, we can conclude that in the case of the same maximum number of generations, the cycle time (i.e., the objective function) obtained by the genetic MILP approach is smaller than that of the Genetic approach, i.e., the solution obtained by the genetic approach is improved by using the MILP.
We conclude this section by discussing the previous works. The approaches developed in [33,34,35,36] can provide optimal or near-optimal solutions under the condition that the types of resources are given. In this paper, we further extend these works by assuming that the types of resources are variables that also have to be optimized. Therefore, the existing approaches in [33,34,35,36] cannot provide a solution for the problem considered in this paper.

6. Conclusions

In this paper, we study the performance optimization for a class of PNs to maximize the throughput of the system subject to a given budget, while both quantities and typesof servers are decision variables. A genetic algorithm combined with mixed-integer linear programming was originally developed to obtain a near-optimal solution. The developed approach is based on linear programming techniques and provides an efficient solution for solving the performance optimization problem where both quantities and types of resources are simultaneously optimized. Our future work will focus on exploring an analytical solution for the considered optimization problem. On the other hand, we will consider improving the efficiency of the developed approach by using some advanced hybrid methods [44].

Author Contributions

Conceptualization, Z.H. and W.S.; methodology, Z.H. and C.G.; software, W.S. and Z.M.; validation, N.R. and Z.M.; formal analysis, Z.H. and W.S.; investigation, Z.H. and W.S.; resources, Z.H.; data curation, not applicable; writing-original draft preparation, W.S.; writing—review and editing, Z.H. and Z.M.; visualization, C.G. and N.R.; supervision, Z.H.; project administration, Z.H.; funding acquisition, Z.H. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Natural Science Foundation of China under grant nos. 61703321, 61803246, 61903119, and 62003201, the China Postdoctoral Science Foundation under grant no. 2019M663608, Shaanxi Provincial Natural Science Foundation under grant nos. 2022JM-323 and 2023-JC-YB-564, the Hebei Province Foundation for Returned Overseas Chinese Scholars under grant C20190319, and the Fundamental Research Funds for the Central Universities under grant JB210413.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The authors express their gratitude to every reviewer of this paper.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
PNPetri net
FMSflexible manufacturing system
MILPmixed-integer linear programming
TMGtimed marked graph
TWMGtimed weighted marked graph
MILPPmixed-integer linear programming problem
WMGweighted marked graph
MGmarked graph
TPNtimed Petri net
TTPNtransition-timed Petri net
PTPNplace-timed Petri net
PTMGplace-timed marked graph

References

  1. He, Z.; Tang, B.; Luan, F. An improved African vulture optimization algorithm for dual-resource constrained multi-objective flexible job shop scheduling problems. Sensors 2023, 23, 90. [Google Scholar] [CrossRef] [PubMed]
  2. Declerck, P. Optimization of the time durations by exploiting time margins in time interval models. IEEE Trans. Control Syst. Technol. 2022, 30, 755–766. [Google Scholar] [CrossRef]
  3. Huang, B.; Zhou, M.; Lu, X. Scheduling of Resource Allocation Systems with Timed Petri Nets: A Survey. ACM Comput. Surv. 2023, 1–28. [Google Scholar] [CrossRef]
  4. Benabid-Najjar, A. Periodic schedules for bounded timed weighted event graphs. IEEE Trans. Autom. Control 2012, 57, 1222–1232. [Google Scholar] [CrossRef] [Green Version]
  5. Kim, H.; Lee, J.; Lee, T. Schedulability analysis for noncyclic operation of time-constrained cluster tools with time variation. IEEE Trans. Autom. Sci. Eng. 2016, 13, 1409–1414. [Google Scholar] [CrossRef]
  6. Huang, B.; Zhou, M. Symbolic Scheduling of Robotic Cellular Manufacturing Systems with Timed Petri Nets. IEEE Trans. Autom. Sci. Eng. 2022, 30, 1876–1887. [Google Scholar] [CrossRef]
  7. Huang, B.; Zhou, M.; Abusorrah, A. Scheduling Robotic Cellular Manufacturing Systems with Timed Petri Net, A* Search and Admissible Heuristic Function. IEEE Trans. Autom. Sci. Eng. 2022, 19, 243–250. [Google Scholar] [CrossRef]
  8. Liu, C. Formal modeling and discovery of multi-instance business processes: A cloud resource management case study. IEEE/CAA J. Autom. Sin. 2022, 9, 2151–2160. [Google Scholar] [CrossRef]
  9. Zhao, Z.; Liu, S.; Zhou, M. Heuristic scheduling of batch production processes based on Petri nets and iterated greedy algorithms. IEEE Trans. Autom. Sci. Eng. 2022, 19, 25–261. [Google Scholar] [CrossRef]
  10. You, D.; Wang, S.; Zhou, M. Supervisory control of Petri nets in the presence of replacement attacks. IEEE Trans. Autom. Sci. Eng. 2021, 67, 1466–1473. [Google Scholar] [CrossRef]
  11. Millo, J.; Simone, R.D. Periodic scheduling of marked graphs using balanced binary words. Theor. Comput. Sci. 2012, 458, 113–130. [Google Scholar] [CrossRef]
  12. Campos, J.; Chiola, G.; Colom, J. Properties and performance bounds for timed marked graphs. IEEE Trans. Fundam. Theory Appl. 1992, 39, 386–401. [Google Scholar] [CrossRef]
  13. Baccelli, F.; Cohen, G.; Olsder, G. Synchronization and Linearity: An Algebra for Discrete Event Systems; Wiley: New York, NY, USA, 1992. [Google Scholar]
  14. He, Z.; Ma, Z.; Tang, W. Performance safety enforcement in strongly connected timed event graphs. Automatica 2021, 128, 109605. [Google Scholar] [CrossRef]
  15. Panayiotou, C.; Cassandras, C. Optimization of kanban-based manufacturing systems. Automatica 1999, 35, 1521–1533. [Google Scholar] [CrossRef]
  16. Li, R.; Reveliotis, S. Performance optimization for a class of generalized stochastic Petri nets. Discret. Event Dyn. Syst. 2015, 25, 387–417. [Google Scholar] [CrossRef] [Green Version]
  17. Rodriguez, R.; Julvez, J.; Merseguer, J. On the performance estimation and resource optimization in process Petri nets. IEEE Trans. Syst. Man Cybern. Syst. 2013, 43, 1385–1398. [Google Scholar] [CrossRef]
  18. Ma, Z.; Li, Z.; Giua, A. Marking estimation in a class of time labeled Petri nets. IEEE Trans. Autom. Control 2020, 65, 493–506. [Google Scholar] [CrossRef]
  19. He, Z.; Li, Z.; Giua, A. Some remarks on State estimation and fault diagnosis of labeled time Petri net systems with unobservable transitions. IEEE Trans. Autom. Control 2019, 64, 5253–5259. [Google Scholar] [CrossRef]
  20. Seatzu, C. Modeling, analysis, and control of automated manufacturing systems using Petri nets. In Proceedings of the 24th IEEE International Conference on Emerging Technologies and Factory Automation, Zaragoza, Spain, 10–13 September 2019; pp. 27–30. [Google Scholar]
  21. Lafit, S.; Proth, J.; Xie, X. Marking Optimization in Timed Event Graphs; Springer: Berlin/Heidelberg, Germany, 2019; pp. 281–300. [Google Scholar]
  22. Giua, A.; Piccaluga, A.; Seatzu, C. Firing rate optimization of cyclic timed event graph. Automatica 2002, 38, 91–103. [Google Scholar] [CrossRef]
  23. He, Z.; Liu, M.; Ran, N. Firing rate optimization of deterministic timed event graphs by server performance improvement. IEEE Access 2019, 6, 70866–70873. [Google Scholar] [CrossRef]
  24. Teruel, E.; Chrzastowski-Wachtel, P.; Colom, J. On weighted T-Systems. Appl. Theory Petri Nets 1992, 616, 348–367. [Google Scholar]
  25. Cottenceau, B.; Hardouin, L.; Boimond, J. Modeling and control of weight-balanced timed event graphs in dioids. IEEE Trans. Autom. Control 2014, 59, 1219–1231. [Google Scholar] [CrossRef]
  26. Marchetti, O.; Munier, A. Complexity results for weighted timed event graphs. Discrete Optim. 2010, 7, 166–180. [Google Scholar] [CrossRef]
  27. Munier, A. Régime asymptotique optimal d’un graphe d’événements temporisé généralisé: Application à un problème d’assemblage. RAIPO-APII 1992, 27, 487–513. [Google Scholar]
  28. Nakamura, M.; Silva, D.M. Cycle time computation in deterministically timed weighted marked graphs. In Proceedings of the 7th IEEE International Conference on Emerging Technologies and Factory Automation, Barcelona, Spain, 18–21 October 1999; Volume 2, pp. 1037–1046. [Google Scholar]
  29. He, Z.; Ma, Z.; Li, Z. Parametric transformation of timed weighted marked graphs: Applications in optimal resource allocation. IEEE/CAA J. Autom. Sin. 2021, 8, 179–188. [Google Scholar] [CrossRef]
  30. Kahouadji, H.; Hamaci, S.; Labadi, K. A new upper bound of cycle time in weighted marked graphs. In Proceedings of the International Conference on Control, Decision and Information Technologies (CoDIT), Hammamet, Tunisia, 6–8 May 2013; pp. 137–142. [Google Scholar] [CrossRef]
  31. Benfekir, A.; Hamaci, S.; Boimond, J.L. Performance evaluation of nonlinear weighted T-system. Int. J. Syst. Sci. 2013, 44, 1948–1955. [Google Scholar] [CrossRef]
  32. He, Z.; Li, Z.; Giua, A. Cycle time optimization of deterministic timed weighted marked graphs by transformation. IEEE Trans. Control Syst. Technol. 2017, 25, 1318–1330. [Google Scholar] [CrossRef] [Green Version]
  33. He, Z.; Li, Z.; Giua, A. Performance optimization for timed weighted marked graphs under infinite server semantics. IEEE Trans. Autom. Control 2018, 63, 2573–2580. [Google Scholar] [CrossRef]
  34. Sauer, N. Marking optimization of weighted marked graphs. Discret. Event Dyn. Syst. 2003, 13, 245–262. [Google Scholar] [CrossRef]
  35. He, Z.; Li, Z.; Giua, A. Optimization of deterministic timed weighted marked graphs. IEEE Trans. Autom. Sci. Eng. 2017, 14, 1084–1095. [Google Scholar] [CrossRef] [Green Version]
  36. He, Z.; Liu, M.; Ma, Z. An improved approach for marking optimization of timed weighted marked graphs. Discret. Event Dyn. Syst. 2019, 29, 127–143. [Google Scholar] [CrossRef]
  37. Qudeiri, J.A.; Yamamoto, H.; Ramli, R. Genetic algorithm for buffer size and work station capacity in serial-parallel production lines. Artif. Life Rob. 2008, 12, 102–106. [Google Scholar] [CrossRef]
  38. Nahas, N.; Nourelfath, M.; Gendreau, M. Selecting machines and buffers in unreliable assembly/disassembly manufacturing networks. Int. J. Prod. Econ. 2014, 154, 113–126. [Google Scholar] [CrossRef]
  39. Liu, L.C.; Yan, C.B.; Li, J.S. Modeling, analysis, and improvement of batch-discrete manufacturing systems: A systems approach. IEEE Trans. Autom. Sci. Eng. 2022, 19, 1567–1585. [Google Scholar] [CrossRef]
  40. Zhang, W.; Wang, J.; Lin, Y. Integrated design and operation management for enterprise systems. Enterp. Inf. Syst. 2019, 13, 424–429. [Google Scholar] [CrossRef] [Green Version]
  41. Wang, J. Charging information collection modeling and analysis of GPRS networks. IEEE Trans. Syst. Man Cybern. 2007, 37, 473–481. [Google Scholar] [CrossRef]
  42. Schuppen, J.V.; Silva, M.; Seatzu, C. Control of discrete-event systems-Automata and Petri Net perspectives. Lect. Notes Control Inf. Sci. 2012, 433, 319–340. [Google Scholar]
  43. Mirjalili, S. Genetic algorithm. Evol. Algorithms Neural Netw. 2019, 780, 43–55. [Google Scholar]
  44. Bi, J.; Yuan, H.; Zhai, J. Self-adaptive bat algorithm with genetic operations. IEEE/CAA J. Autom. Sin. 2022, 9, 1284–1294. [Google Scholar] [CrossRef]
Figure 1. The TWMG model for Example 1.
Figure 1. The TWMG model for Example 1.
Sensors 23 01447 g001
Figure 2. Flow chart of the developed approach based on genetic algorithm.
Figure 2. Flow chart of the developed approach based on genetic algorithm.
Sensors 23 01447 g002
Figure 3. The equivalent PTMG corresponding to the TWMG model N in Figure 1 with an initial marking M Chm = [ 100 , 0 , 4 , 5 ] .
Figure 3. The equivalent PTMG corresponding to the TWMG model N in Figure 1 with an initial marking M Chm = [ 100 , 0 , 4 , 5 ] .
Sensors 23 01447 g003
Figure 4. The TWMG model of the flexible manufacturing system.
Figure 4. The TWMG model of the flexible manufacturing system.
Sensors 23 01447 g004
Table 1. The unit cost and the firing delays of each server on the transitions for Example 1.
Table 1. The unit cost and the firing delays of each server on the transitions for Example 1.
TransitionServer TypeUnit Cost of Server Type jFiring Delay
t i j λ ( t i , j ) δ ( t i , j ) [s]
t 1 1415
2104
3152
t 2 1520
2918
Table 2. Simulation results of Example 3.
Table 2. Simulation results of Example 3.
ApproachesGenetic MILPGenetic
Obtained Results
Maximal number of generation G e 1251512515
Best solution3.03.03.03.03.33.33.33.1
Worst solution4.54.03.03.06.05.05.04.0
Average solution3.73.23.03.04.44.23.73.7
Average CPU time [s]7.511.020.559.43.14.69.124.2
Table 3. Production process of the flexible manufacturing system.
Table 3. Production process of the flexible manufacturing system.
Pump wheel MA 1 MA 2 MA 3 MA 4 MA 5 MA 6
Turbine MA 1 MA 7 MA 3 MA 8 MA 10 MA 11 MA 12
MA 3 MA 9 MA 6 MA 10 MA 11 MA 12
Guide wheel MA 1 MA 4 MA 13
Cover wheel MA 14 MA 4 MA 15 MA 6
Hydraulic torque converter MA 16 MA 17
Table 4. Unit costs of the servers and the firing delays of each operation.
Table 4. Unit costs of the servers and the firing delays of each operation.
TransitionMachineServer TypeUnit Cost of ServerFiring DelayTransitionMachineServer TypeUnit Cost of ServerFiring Delay
t i MA j λ ( t i , j ) δ ( t i , j ) [s] t i MA j λ ( t i , j ) δ ( t i , j ) [s]
t 1 MA 1 1727 t 13 MA 6 2734
215193829
3201541026
4231351120
t 2 MA 2 1425 t 14 MA 10 11045
282221438
t 3 MA 3 1740 t 15 MA 11 1817
283721213
3925 t 16 MA 12 1518
t 4 MA 4 18162912
2915 t 17 MA 1 1915
310921514
412632010
t 5 MA 5 13294236
2625 t 18 MA 4 1818
38202916
t 6 MA 6 163831016
273541213
3832 t 19 MA 13 11324
4102821719
5112532013
t 7 MA 1 1926 t 20 MA 14 1738
2152321131
32018 t 21 MA 4 1825
423122922
t 8 MA 7 123131020
252641214
3720 t 22 MA 15 11036
t 9 MA 3 173321430
2825 t 23 MA 6 1637
39162732
t 10 MA 8 12113829
27841024
t 11 MA 3 172651120
2822 t 24 MA 16 11458
391022142
t 12 MA 9 154733020
2842 t 25 MA 17 1713
313352810
t 13 MA 6 16353126
Table 5. Simulation results of the developed approach for the flexible manufacturing system.
Table 5. Simulation results of the developed approach for the flexible manufacturing system.
ApproachesGenetic MILPGenetic
Obtained Results
Maximal number of generation G e 1251025104070100
Best solution76.07268.068.0130.0102.0102.090.090.090.0
Worst solution84.077.376.076.0212.0204.0180.0168.0130.0130.0
Average solution79.775.271.370.6171.8159.4152.2126.2120.8111.7
Average CPU time [s]72.9152.9396.51059.34.712.728.8142.8433.3843.8
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Shi, W.; He, Z.; Gu, C.; Ran, N.; Ma, Z. Performance Optimization for a Class of Petri Nets. Sensors 2023, 23, 1447. https://doi.org/10.3390/s23031447

AMA Style

Shi W, He Z, Gu C, Ran N, Ma Z. Performance Optimization for a Class of Petri Nets. Sensors. 2023; 23(3):1447. https://doi.org/10.3390/s23031447

Chicago/Turabian Style

Shi, Weijie, Zhou He, Chan Gu, Ning Ran, and Ziyue Ma. 2023. "Performance Optimization for a Class of Petri Nets" Sensors 23, no. 3: 1447. https://doi.org/10.3390/s23031447

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop