Next Article in Journal
Show Me the Money! Process Modeling in Pharma from the Investor’s Point of View
Next Article in Special Issue
Optimal Design of Standalone Photovoltaic System Based on Multi-Objective Particle Swarm Optimization: A Case Study of Malaysia
Previous Article in Journal
Simulation Study on Gas Holdup of Large and Small Bubbles in a High Pressure Gas–Liquid Bubble Column
Previous Article in Special Issue
Transient Modeling of Grain Structure and Macrosegregation during Direct Chill Casting of Al-Cu Alloy
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Global Supervisory Structure for Decentralized Systems of Flexible Manufacturing Systems Using Petri Nets

College of Electronics and Information, Xi’an Polytecnic University, Xi’an 710048, China
*
Author to whom correspondence should be addressed.
Processes 2019, 7(9), 595; https://doi.org/10.3390/pr7090595
Submission received: 27 July 2019 / Revised: 24 August 2019 / Accepted: 26 August 2019 / Published: 4 September 2019

Abstract

:
Decentralized supervisory structure has drawn much attention in recent years to address the computational complexity in designing supervisory structures for large Petri net model. Many studies are reported in the paradigm of automata while few can be found in the Petri net paradigm. The decentralized supervisory structure can address the computational complexity, but it adds the structural complexity of supervisory structure. This paper proposed a new method of designing a global controller for decentralized systems of a large Petri net model for flexible manufacturing systems. The proposed method can both reduce the computational complexity by decomposition of large Petri net models into several subnets and structural complexity by designing a global supervisory structure that can greatly reduce the cost at the implementation stage. Two efficient algorithms are developed in the proposed method. Algorithm 1 is used to compute decentralized working zones from the given Petri net model for flexible manufacturing systems. Algorithm 2 is used to compute the global controller that enforces the liveness to the decentralized working zones. The ring assembling method is used to reconnect and controlled the working zones via a global controller. The proposed method can be applied to large Petri nets size and, in general, it has less computational and structural complexity. Experimental examples are presented to explore the applicability of the proposed method.

1. Introduction

Due to the complexity of flexible manufacturing systems in the recent years, decentralized systems control has drawn much attention worldwide by the researchers in the area of the discrete event systems. Large-scale discrete event systems (DES) are modeled through the composition of many smaller subsystems representing shared resources by the concurrent operations. The controlled of large-size flexible manufacturing systems is tedious and time-consuming, perhaps it required huge memory space due to a large number of its state space. Moreover, the analysis of complex systems is very complicated and sometimes remains non-deterministic polynomial time (NP-hard). To reduce the computational complexity and required memory space for the analysis and control of large flexible manufacturing systems, we decomposed the systems into several working zones (i.e., several sub-problems).
Several methods are developed in the literature to analyze the decentralized systems of DES-based on the system applications. Most of the methods focus on the design of a decentralized controller (i.e., modular controller) to supervise the operations of the DES. The DES find application in the areas of automation [1,2], software development [3], computer engineering [4,5], communication systems [6], flexible manufacturing system [7,8] and transportation networks [9]. The main challenges of the study of DES are the occurrence of deadlocks. Deadlocks can occur due to excessive use of shared resources in the systems, which degrade the system performance of DES [10,11,12,13,14,15,16,17]. Three main tools exist to design a decentralized supervisory structure for DES, namely, they are; graph theory [2,5,15,16], automata [18,19,20,21,22] and Petri nets [14,16,23,24,25,26,27]. This paper focuses on the design of a global supervisory structure for decentralized systems using the Petri nets paradigm.
In a Petri net paradigm, forbidden states are often specified by linear constraints. The concept of generalized mutual exclusion constraints (GMECs) is often used to analyze and construct a supervisory structure that enforces the liveness of the DES [25,27,28]. The emergence of large Petri nets model for flexible manufacturing systems motivates the research to decompose the systems in a systematic method. The work of Li in [29] developed a divide and conquer method to control the deadlocks. The developed method is used to decompose the Petri net model into smaller subnets, in such a way that the decomposition is done via resource transition circuits. Control places are designed using siphon techniques for the decomposed subnets. This adds the structural complexity to the size of the supervisory structure. Uzam et al. modified the divide and conquer method in [30] via an iterative decomposition of the Petri net model. At each iteration, control places are designed for the decomposed subnets using reachability techniques. The method suffers from the computational complexity since it involved the computation of the reachability graph at each iteration.
A modular supervisory scheme for modeling and synthesis of supervisory agents using a Petri net model is developed in [4]. These modular supervisors are conceived as operating independently, each exercising control to satisfy its own specification. However, when all the modular supervisors operate concurrently, they may result in conflict. To reduce the computational complexity for the design of the supervisory structure, the work presented in [31] proposed two methods for the decentralized supervisory structure. The first method considers the design of decentralized supervisory structure using communication while assuming that all the transitions in the Petri net model are observable and controllable. The second method considers the transformation of constraints that is not d-admissible in the design of the decentralized supervisory structure with no communications. The solution is obtained by solving integer linear programming (ILPP). The first method allows more reachable states than the second method due to the advantage of unrestricted communications. Generating and solving integer linear programming problem (ILPP) is computationally complex [32,33,34,35] and can limit the application of the developed methods.
It is generally known that computation of a reachability graph is computationally complex and sometimes NP-hard. To avoid the computation of the reachability graph, the authors in [17] developed a new method of decentralized supervisory control for communication systems using a Petri nets paradigm. The communication among the decentralized subnets are enforced in a centralized environment. Ye et al. in [28] extended the works to flexible manufacturing systems that emphasized the efficiency of the decomposition of Petri nets for flexible manufacturing systems. The developed method designs a decentralized supervisory structure without transforming the inadmissible constraints to admissible constraints. The communication constraints are incorporated between the decentralized subnets. The decentralized supervisory structure is usually associated with structural complexity, which require huge costs in the implementation stage. The computational and structural complexity is addressed in the proposed paper. The former is achieved by decomposition of Petri nets into a several subnets model while the latter is addressed using a global supervisory structure.
The study of [36] proposed a decomposition of a Petri net model through the use of local invariants (place and transition invariants) computation since it is well-known that the invariants can help to prove structural properties of Petri nets, i.e., boundedness, reversibility, liveness, and safeness. This proposed paper utilized the use of P-invariants in the decomposition of a large Petri net model and the operation for each decentralized subnet can be monitored using the global controller unlike the work of Bourjij et al. in [36] that the global solution can only be found by the concatenation of the subnets that has the same coupling power.
In this paper, we proposed a new method to design a global supervisory structure of the decentralized systems using Petri nets for flexible manufacturing systems. First, a subnet is computed from the given Petri net model for a flexible manufacturing system. Second, the subnet model is split into several decentralized working zones. The main contributions of the proposed paper are summarized as follows: (i) two efficient algorithms are developed, the first algorithm is used to compute the decentralized working zones from the subnet model, while the second algorithm is used to compute the global controller; (ii) the proposed method can reduce the computational and structural complexity through the use of global supervisory structure and (iii) the proposed method can be applied to a complex system for the computation of the supervisory structure.
The ring assembling is used to reconnect and control the working zones via a global controller. The global controller is computed and added to the decentralized working zones. When all the decentralized working zones are reconnected via a global controller, the resulting Petri net model is live maximally permissive behavior. Several experimental examples are used to explore the applicability of the proposed method.
The remainder of this paper is organized as follows. Formal descriptions of Petri nets and notations used in this paper are presented in Section 2. Section 3 provides the detail ideas for the computation of decentralized working zones. Design of a global controller is presented in Section 4. Experimental examples are provided in Section 5. Discussions are presented in Section 6. Finally, Section 7 concludes this paper.

2. Preliminaries

A Petri net is a four-tuple N = ( P , T , F , W ) , where P and T are finite and non-empty sets. P is a set of places and T is a set of transitions with P T = . F ( P × T ) ( T × P ) is called a flow relation of the net, represented by arcs with arrows from places to transitions or from transitions to places. Places are graphically represented by circles while transitions by bars or square boxes. W : ( P × T ) ( T × P ) N is a mapping that assigns a weight to an arc: W ( x , y ) > 0 if ( x , y ) F , and  W ( x , y ) = 0 , otherwise, where ( x , y ) ( P × T ) ( T × P ) and N is the set of non-negative integers. N = ( P , T , F , W ) is said to be ordinary, denoted as N = ( P , T , F ) , if  f F , W ( f ) = 1 . Let x P T be a node in N = ( P , T , F , W ) .
A marking of a Petri nets N describes the current state of the system. M ( p ) denotes the number of tokens in place p. The presence of token in the Petri net structure makes the system to be dynamic. It is essential to track the places that are marked at each reachable marking. A place p is said to be marked at a marking M if M ( p ) > 0 . Usually, we express the markings and vectors as a formal sum notation or multiset for easy representation i.e.,  p P M ( p ) p . Let us consider a simple example, assuming we have a net system with places p 1 to p 7 formally represented as P = { p 1 , , p 7 } . If we have a marking that has one token in place p 3 and two tokens in places p 2 and p 5 , respectively, using multiset notation, the marking can be written as 2 p 2 + p 3 + 2 p 5 instead of ( 0 2 1 0 2 0 0 ) . In summary, a marking ( M ) of ( N , M 0 ) is a mapping from P to N.
Let us assume t T to be a transition in the Petri nets N. At any marking M, transition t is enabled if p t , M ( p ) W ( p , t ) . For  easier representation and without any ambiguity, it can be denoted as M [ t . If the enable transition is fired, it leads the system into new reachable marking M . Formally, the tokens at each place in the new reachable marking can be tract as p P , M ( p ) = M ( p ) W ( p , t ) + W ( t , p ) and this can be denoted as M [ t M in short.
Suppose that x is a node in the Petri net model i.e.,  x P T . The input (preset) of x is expressed as x = { y P T ( y , x ) F } and its output (postset) is expressed as x = { y P T ( x , y ) F } . The Petri net structure can be represented in matrix form and is called an incidence matrix. An incidence matrix is obtained from the input and output matrices. The input incidence matrix is defined as [ D ] = W ( p , t ) and the output incidence matrix is defined as [ D + ] = W ( t , p ) . Therefore, the incidence matrix of the net is expressed as [ D ] = [ D + ] [ D ] . The incidence vector for a place p (transition t) in the raw (column) incidence matrix can be represented as [ D ] ( p , · ) ( [ D ] ( · , t ) ).
A Petri net model ( N , M 0 ) is said to be in a deadlock state when none of its transitions can be enabled at a marking M, i.e.,  t T , M [ t holds. A  Petri net model is deadlock free when some of the reachable states can not be observed. In other words, a deadlock free is called live-lock and can be expressed as M R ( N , M 0 ) , t T , M 0 [ t . ( N , M 0 ) is said to be live if all its reachable states can return to its initial marking M 0 . Mathematically, it can be expressed as ( N , M 0 ) being live if M R ( N , M 0 ) , t T , M R ( N , M ) , M [ t M 0 . Let M and M be two markings in R ( N , M 0 ) . M A-covers M if p P A , M ( p ) M ( p ) , which is denoted as M ( p ) A M ( p ) .
Let σ be a transition sequence. The Parikh vector of σ , denoted by σ , is a column vector, represented by σ = [ # σ ( t 1 ) , # σ ( t 2 ) , , # σ ( t | T | ) ] T , where # σ ( t i ) denotes the number of occurrences of t i in σ . σ denote the set of all firing sequence in ( N , M 0 ) . The notation ξ ( σ ) represents the vector firing sequence σ in ( N , M 0 ) mapping from ( N , M 0 ) to its decentralized subnet. A P-vector is a column vector I : P Z , indexed by P, where Z = { , 2 , 1 , 0 , 1 , 2 , } . A P-vector I is a place invariant if I 0 and I T [ D ] = 0 T . A T-vector is a column vector H : T Z indexed by T. A T-vector H is a transition invariant if [ D ] H = 0 and H 0. The  support of a place (transition) invariant I ( H ) is denoted by | | I | | = { p | I ( p ) 0 } ( | | H | | = { t | H ( t ) 0 } ) . Let N + denote the set of positive integers.

3. Petri Net Model with S 3 PR

Systems of simple sequential processes with resources (S 3 PR) are extensively used and adopted in the analysis of FMSs [27,37,38]. This paper considers an S 3 PR class of Petri nets for flexible manufacturing systems.
Definition 1.
A system of simple sequential processes with resources (S 3 PR) is a Petri net N = ( P , T , F ) , satisfying [37]:
1. 
P = P A P R P 0 is a partition of places with P A P R = , P A P 0 = , and  P R P 0 = ;
(a) 
p i 0 is called the process idle place of N i . Elements in P A i and P R i are called operation and resource places;
(b) 
P A i ; P R i ; p i 0 P 0 ; ( P A i { p i 0 } ) P R i = ;
(c) 
p P A i , t p , t p , r p P R i , t P R i = t P R i = { r p } ;
(d) 
r P R i , r P A i = r P A i , r r = ;
(e) 
( p 0 i ) P R i = ( p 0 i ) P R i = ;
2. 
T = i = 1 m T i , with  T i T j = for all i j , is a set of transitions;
3. 
N i is a strongly connected state machine, where N i = ( P A i { p i 0 } , T i , F i ) is the resulting net after the places in P R i and related arcs are removed from N i ;
4. 
Any two N i are composable when they share a set of common places. Every shared place must be a resource place.
5. 
For p P A , ( p ) P R = { r p } where resource place r p is called the resource used by p.
Definition 2.
Let ( N , M 0 ) be the Petri net model with N = ( P , T , F ) , where P = P A P R P 0 . ( N , M 0 ) is said to be a subnet of ( N , M 0 ) with N = ( P , T , F ) if P = P \ P 0 , T = T , F = F \ Q . Q ( P 0 × T ) ( T × P 0 ) is called a flow relation of the net, represented by an arc with an arrow from idle places to transitions or transitions to idle places.
Definition 3.
Resource r is said to be shared if p , p ( | | I r | | \ { r } ) , p P A i , p P A j , i j . Let the shared resource place denoted by r in ( N , M 0 ) .
Definition 4.
Let t T be the transition in ( N , M 0 ) . Transition t is said to be source transition if | t | = 1 and is said to be sink transition if | t | = 1 . Let t s denote the source transition and t c denote the sink transition. The sets of source and sink transition are denoted as ϑ = { t t T , | t | = 1 } and Ψ = { t t T , | t | = 1 } ,  respectively.
Property 1.
Every concurrent process has at least one source and sink transitions in ( N , M 0 ) .

3.1. Decentralization of FMS into Working Zones

The analysis of a complex Petri net model for a flexible manufacturing system is hard and time-consuming if it’s not NP-hard. The complex system can be addressed by dividing it into several decentralized problems (subnet).
Definition 5.
A subnet of a Petri net model is called a working zone denoted by Z = ( P q , T q , F q ) if it satisfies the following:
  • P q = I r P q = P A q P R q is a partition of places with P A q P R q = . P A q and P R q is the set of activity and resource places, respectively;
  • T q = { t t T , I r I r } is the set of transition associated with the minimal P-semiflow;
  • t T , | t | = | t | = 1 is a state machine;
  • F q ( P q × T q ) ( T q × P q ) is a flow relation simply represented by directed arcs;
  • r P R , then M ( r ) 1 ;
  • Z is strongly bounded.
Suppose that we have N = ( P , T , F ) as a subnet from ( N , M 0 ) with N = ( P , T , F ) . N consists of a set of a decentralized working zone 1 = ( P 1 q , T 1 q , F 1 q ) , 2 = ( P 2 q , T 2 q , F 2 q ) , , and = ( P q , T q , F q ) such that P = P 1 q P 2 q P q , T = T 1 q T 2 q T q , and  F = F 1 q F 2 q F q . A transition t T is a common transition if t belongs to i and j in N , i , j { 1 , 2 , , } and i j . Let T d T denote a set of common transitions from N . With no ambiguity and easy representation, t T d , t can be rewritten as t belongs to i and t belongs to j , where t , t s.t. [ t condition. Suppose that z = ( P z q , T z q , F z q ) is a decentralized working zone from N , where z { 1 , , } and is the number of working zones. D z is the incidence matrix of z and each working zone can be represented as:
t j T z q , 1 i n , 1 j m D z ( p i , t j ) 1 .
The places of each decentralized working zone form the support of P-invariants and can be represented as a multiset
I = i = 1 n p i 1 ,
where n = | P z q | and m = | T z q | . Let t i T z , i { 1 , , m } be the transitions associated with the places in the P-invariants. All places in the support of P-invariants are connected to its corresponding transitions as
i { 1 , , n } , j { 1 , , m } , p i P z q , t j T z q , ( p i × t j ) ( t j × p i ) .
Let D be the incidence matrix of the subnet model, and I be the P-invariant in the decentralized working zone. Each decentralized working zone should satisfy Equation (4),
I = I , I T [ D ] = 0 T .
Every working zone should contain at least one token after the decentralization, which implies that there exists at least one resource place in each decentralized working zone being marked at the initial marking M 0 , i.e., for every z , z { 1 , , }
r s P z q , M ( r s ) 0 .
Theorem 1.
Let N = { P , T , F } be a subnet of ( N , M 0 ) . N can be decentralized into minimal working zones via Algorithm 1.
Algorithm 1 Decentralization of an FMS into working zones
Require: Petri net model of an FMS structure suffering from deadlock
Ensure: Decentralized working zones
  1:
Compute the subnet model ( N , M 0 ) from ( N , M 0 ) using Definition 2
  2:
Compute the minimal P-invariant I i in ( N , M 0 )
  3:
Compute the support of minimal P-invariant I i from ( N , M 0 )
  4:
i { 1 , 2 , , n } , / n is the number of I i in ( N , M 0 ) /
  5:
while i n do
  6:
    if ( I satisfied equ. 1–5) then
  7:
        Compute T i q from N using Definition 5
  8:
        Compute T d i = T i q T
  9:
        Remove Z i = ( P i q , T i q , F i q ) from N , P i q I i
10:
         P = P \ I i
11:
         T T d i = T \ T i q
12:
         F = F \ F i q
         / T d is the set of common transition between the two successive Z i /
13:
        endif
14:
     N = ( P , T , F )
15:
     i = i + 1
16:
end
17:
Output the decentralized working zones
Proof. 
According to Definition 5, if P \ P A , at least one share resource place (i.e., r P R ) therefore exists in ( N , M 0 ) . It is obvious that any shared resource place for a Petri net model of an FMS forms a minimal P-semiflow I r such that { r } = I r \ P A , P A P . Therefore, each minimal P-semiflow can satisfy Equations (1)–(5) of Algorithm 1 and hence the theorem holds. □
Theorem 2.
Let ( N , M 0 ) be a system with N = ( P , T , F ) and i be decentralized subnet from N , i { 1 , , } , where ℓ is the number of decentralized working zones. Let σ and σ i denote all the transition firing sequences in N and i , respectively. ξ i ( σ ) = σ i if and only if for any two working zones i and j satisfied T i T i , σ i T i T j = σ j T i T j , for  i , j { 1 , , } [28].
To minimize space and redundancy, we can refer the reader to the work of [28] for the proof of Theorem 2. According to Theorem 2, both the structural and dynamic properties of subnet with that of decentralized systems are preserved and equivalence for any transition firing sequence from decentralized working zones that can be mapped into a subnet model.

3.2. Demonstrated Example

Let us assume that we consider a flexible manufacturing system shown in Figure 1a that produced two different part types (goods). Machines M1, M2 and M3 can produce two different types of parts (P1 and P2) in parallel. A robot R1 can load (unload) parts P1 (P2) from M1 to M2 (M2 to M1), respectively. Similarly, the robot R2 can load part P2 from M2 to M1 and unload part P1 from M1 to M2. The machines M1, M2 and M3 can only process one part at a time. Similarly, the robots R1 and R2 can only process one part at a time. Parts P1 and P2 are considered in the production sequence for a flexible manufacturing system through input/output buffers I1/O1 and I2/O2. Initially, it is assumed that there are no parts in the system.
The layout of flexible manufacturing systems shown in Figure 1b can be equivalently represented using Petri nets as shown in Figure 2a. Places in the Petri nets shown in Figure 2a are partitioned as P = P 0 P A P R , where P 0 = { p 16 , p 17 } , P R = { p 11 , , p 15 } and P A = { p 1 , , p 10 } . Places p 1 , p 2 , p 3 , p 4 and p 5 represent the operations of M1, R1, M2, R2 and M3 for the production sequence of part P1, respectively. Similarly, for the production sequence part P2, places p 6 , p 7 , p 8 , p 9 and p 10 represent the operations of M3, R2, M2, R1 and M1, respectively. Places p 16 and p 17 represent the I1/O1 and I2/O2 buffers, respectively, while places p 11 , p 12 , p 13 , p 14 and p 15 represent the shared resources of M1, R1, M2, R2 and M3, respectively.
The subnet N shown in Figure 2b has five minimal P-invariants: I 1 = ( 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 ) T , I 2 = ( 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 ) T , I 3 = ( 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 ) T , I 4 = ( 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 ) T , and  I 5 = ( 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 ) T . The support of minimal P-invariants are I 1 = { p 1 , p 10 , p 11 } , I 2 = { p 2 , p 9 , p 12 } , I 3 = { p 3 , p 8 , p 13 } , I 4 = { p 4 , p 7 , p 14 } and I 5 = { p 5 , p 6 , p 15 } . The preset and posset of P-invariants are I 1 = I 1 = { t 1 , t 2 , t 11 , t 12 } , I 2 = I 2 = { t 2 , t 3 , t 10 , t 11 } , I 3 = I 3 = { t 3 , t 4 , t 9 , t 10 } , I 4 = I 4 = { t 4 , t 5 , t 8 , t 9 } and I 5 = I 5 = { t 5 , t 6 , t 7 , t 8 } . The set of common transition between P-invariants are T d 1 = I 1 I 2 = { t 2 , t 11 } , T d 2 = I 2 I 3 = { t 3 , t 10 } , T d 3 = I 3 I 4 = { t 4 , t 9 } and T d 4 = I 4 I 5 = { t 5 , t 8 } . The working zones are computed as shown in Figure 3, i.e.,  1 = ( P 1 q , T 1 q , F 1 q ) with P 1 q = { p 1 , p 10 , p 11 } and T 1 q = { t 1 , t 2 , t 11 , t 12 } , 2 = ( P 2 q , T 2 q , F 2 q ) with P 2 q = { p 2 , p 9 , p 12 } and T 2 q = { t 2 , t 3 , t 10 , t 11 } , 3 = ( P 3 q , T 3 q , F 3 q ) with P 3 q = { p 3 , p 8 , p 13 } and T 3 q = { t 3 , t 4 , t 9 , t 10 } , 4 = ( P 4 q , T 4 q , F 4 q ) with P 4 q = { p 4 , p 7 , p 14 } and T 4 q = { t 4 , t 5 , t 8 , t 9 } and 5 = ( P 5 q , T 5 q , F 5 q ) with P 5 q = { p 5 , p 6 , p 15 } and T 5 q = { t 5 , t 6 , t 7 , t 8 } .

4. Design of a Global Controller

The global controller aims to reconnect and controlled the working zones of an FMS such that it can enforce the liveness of the decentralized working zones. Moreover, the proposed method can provide the liveness of the Petri net model while preserving more reachable states of the system.

4.1. Global Controller Using Ring Assembling

The decentralized working zones can be reconnected and controlled through the global controller in a ring manner and we called such a process ring assembling. Ring assembling consists of a single global controller that oversees the operations of all the working zones in an FMS. The controller can perform the following functions: (i) it reconnects the working zones after decentralization, and (ii) it enforces liveness to the overall working zones in an FMS. The global controller connecting the working zones of an FMS decreases the structural complexity of the supervisory structure. The block diagram for the supervisory control using ring assembling is shown in Figure 4, and its equivalent representation using a Petri net model is depicted as shown in Figure 5.
Let us consider the design of a global controller that controlled all the decentralized working zones. Let i = ( P i , T i , F i ) , i { 1 , , } be decentralized working zones from N = ( P , T , F ) . Let  P R be the set of resource places in N and P i be the set of place for the decentralized system i . Let λ i denote the characteristic activity place for each decentralized zone and can be represented as
i { 1 , , } , λ i = j = 1 x M ( p j ) p j \ M ( r j ) r j β G ,
where p j P i q and r j P R be the activity and resource place associated with the working zones i , i.e.,  i { 1 , , } respectively. β i is the initial marking of the decentralized zones. x = | P i q | is the number of the activity places in i . The overall characteristic activity place of the global controller is
i = 1 λ i β i .
Let L i be the marking of places in the characteristic activity place of i and D L i denote the incidence matrix of i . Let C denote the global controller connected between the working zones (i.e.,  1 , , ) and D C i be the incidence matrix of 1 connected to the global controller. D C i can be computed as
D C i = L i D L i .
The initial number of tokens in the controller can be determined by the initial number of tokens in the characteristic activity place of the working zones associated with a decentralized controller i.e., if  β i represents the initial marking of the decentralized working zone for i { 1 , , } , and  β C denote the initial marking of C , then the initial marking of the decentralized controller is
β C = i = 1 β i .
Finally, let D C be the incidence matrix of the global controller. The incidence matrix of the global controller connecting all the decentralized working zones is
D C = D C 1 ] + + [ D C ,
where D C has a dimension of 1 × ( 2 | T | | Ψ | | ϑ | ) , and | T | is the number of transitions in the subnet N , while | Ψ | and | ϑ | are the number of sink and source transition, respectively.
Theorem 3.
The decentralized controller computed using Algorithm 2 can enforce liveness of the Petri net model ( N c , M 0 c ) .
Algorithm 2 Computation of decentralized controller
Require: Petri net model ( N , M 0 ) of FMS structure suffering from deadlock
Ensure: Controlled Petri nets ( N c , M 0 c )
  1:
compute the subnet N of the Petri net model
  2:
compute the decentralized working zones using Algorithm 1 i.e.,  i using Algorithm 1
  3:
for (1,  i + + ) do
  4:
    compute λ i
  5:
    compute β i
  6:
    end
  7:
computes the overall characteristic activity place for the global controller
  8:
computes the overall incidence matrix of the global controller D C using Equation (10)
  9:
computes the initial marking of the global controller β C using Equation (9)
10:
add the global controller to the working zones i
11:
Output the controlled Petri net model ( N c , M 0 c )
Proof. 
Since all the working zones forming a minimal P-semiflow with the global controller C exist, and the places in the working zones constitute a minimal P-semiflow in ( N c , M 0 c ) , at each reachable marking of ( N c , M 0 c ) , each working is marked and can’t lead the system into a deadlock region. □
Proposition 1.
Let ϑ and ϑ be the set of source transitions in ( N , M 0 ) and ( N c , M 0 c ) , respectively. The set of sink transition in ( N , M 0 ) is equal to the set of sink transition in ( N c , M 0 c ) i.e., ϑ = ϑ .
Proof. 
Since the source transitions from ( N , M 0 ) that are part of the common transition of the decentralized working zones exist, i.e., t ϑ , t T d . Moreover, both the P-invariants in ( N , M 0 ) and that of ( N c , M 0 c ) are preserved, which lead the systems to have equal firing condition at the initial markings. Perhaps, all of the transitions that can be enabled at the initial marking are source transitions. Hence, we conclude that ϑ ϑ or ϑ ϑ holds. □
Theorem 4.
Let i and j be the decentralized working zones from N with i = ( P i q , T i q , F i q ) and j = ( P j q , T j q , F j q ) , i , j { 1 , , } . Assume t is a common transition between the working zones i and j ; t can be expressed as t i and t j belongs to i and j , respectively, if [ t [ t i , T i q T j q .
Proof. 
Suppose M and M are the markings generated from ( N c , M 0 c ) at markings M i and M j by firing transitions t and t , respectively. Let M be a marking after transition t fired from a marking M of ( N , M 0 ) . We prove that M A M is true.
Let M 0 be the initial marking in ( N , M 0 ) with N = ( P , T , F ) and M 0 c be the initial marking of ( N c , M 0 c ) with N c = ( P A P R { P 0 } C , T , F ) . Since at their initial markings ( p i P ) M 0 ( p i ) ( p i P ) M 0 c ( p i ) \ M ( C ) , from Proposition 1, we know that the controlled Petri net model ( N c , M 0 c ) and the subnet model ( N , M 0 ) contain the same set of sink ( ϑ ) and source ( ϕ ) transitions. It implies that M 0 [ t s M = M 0 c [ t s M i is true. Similarly, it is also true for M 0 [ t s M = M 0 c [ t s M j .
We proceed to show that it can also be true at a certain marking by firing a sequence of transitions for ( N , M 0 ) that is mapped in ( N c , M 0 c ) . Let σ be the set of a transition sequence that is mapped from ( N , M 0 ) to ( N c , M 0 c ) . The firing of σ from the initial markings can lead to M 0 [ t s M i [ σ [ t M and M 0 c [ t s M [ σ [ t M , since all the minimal P-invariants of ( N , M 0 ) and ( N c , M 0 c ) are preserved and are equal. This implies that the entire transition firing sequence σ of ( N , M 0 ) can be traced in ( N c , M 0 c ) , and subsequently leads M A M to hold. Similarly, it is true for M A M . Consequently, if M A M and M A M is true, it is definitely true for M A M . □
Let us consider the Petri net model of FMS shown in Figure 2. The Petri net model of FMS consists of five working zones as computed by Algorithm 1. The characteristic activity places in 1 is p 1 + p 10 1 . Similarly, the characteristic activity places in 2 , 3 , 4 and 5 are p 2 + p 9 1 , p 3 + p 8 1 , p 4 + p 7 1 and p 5 + p 6 1 , respectively. The overall characteristic activity place for the global controller is p 1 + p 2 + p 3 + p 4 + p 5 + p 6 + p 7 + p 8 + p 9 + p 10 5 . The incidence matrix of the decentralized working zones are:
D c 1 = p 1 p 10 [ 1 1 ] t 1 t 2 t 11 t 12 [ 1 1 0 0 0 0 1 1 ] p 1 p 10 , D c 2 = p 2 p 9 [ 1 1 ] t 2 t 3 t 10 t 11 [ 1 1 0 0 0 0 1 1 ] p 2 p 9 , D c 3 = p 3 p 8 [ 1 1 ] t 3 t 4 t 9 t 10 [ 1 1 0 0 0 0 1 1 ] p 3 p 8 , D c 4 = p 4 p 7 [ 1 1 ] t 4 t 5 t 8 t 9 [ 1 1 0 0 0 0 1 1 ] p 4 p 7 , D c 5 = p 5 p 6 [ 1 1 ] t 5 t 6 t 7 t 8 [ 1 1 0 0 0 0 1 1 ] p 5 p 6 .
The constraints of the global controller connecting all the working zones are summarized as shown in Table 1. The global controller C is responsible for connecting and controlled the operations of the working zones i . When all the decentralized working zones are connected via a global controller, the overall Petri net model is live with maximally permissive behaviour. The advantage of the proposed method is that it can be applied to complex systems. The complex systems can be easily addressed by dividing the system into various subproblems. The overall controlled systems are shown in Figure 6.

4.2. Computational Complexity

Algorithm 1 computes the decentralized working zones from ( N , M 0 ) with N = ( P , T , F ) . The algorithm is used to search and split up the P-invariant from ( N , M 0 ) . Obviously, each P-invariant is associated with the resource place in ( N , M 0 ) . Let the number of resource places be n i.e., | P R | = n . The “While” loop is executed n times to search for the P-invariants in ( N , M 0 ) . Since the number of resource places is less than the number of activity places in ( N , M 0 ) , therefore, in the worst case scenario, we have n times to search the P-invariants that satisfy Equations (1)–(5). The complexity of Algorithm 1 to decentralize the working zones from ( N , M 0 ) in the worst case is O ( n ) .
Algorithm 2 is used to compute the global controller for all the decentralized zones of the subnet model. The “For loop” is executed times to compute the characteristic activity places for the decentralized working zones. Based on the fact that each decentralized working zone is associated with the resource place of the Petri net model, the computational complexity of Algorithm 2 in the worst case is therefore O ( n ) . In general, the computational complexity of the proposed method has polynomial time complexity.

5. Experimental Examples

This section presents some experimental examples to show the applicability of the proposed method. In each experimental example, the global controller can enforce the liveness of the Petri net model with maximally permissive behavior.
Example 1.
Let us consider the Petri net model of a flexible manufacturing system (FMS) shown in Figure 7. The FMS consists of two concurrent processes. The places in the Petri net model are partitioned into three sets as P = P A P R P 0 , where P 0 = { p 1 , p 8 } , P R = { p 13 , , p 16 } and P A = { p 2 , , p 7 , p 9 , , p 12 } . Places p 2 , p 3 , p 4 , p 5 , p 6 and p 7 represent the operations of the production sequence of part P1, respectively. Similarly, places p 9 , p 10 , p 11 and p 12 represent that of P2. Places p 13 , p 14 , p 15 and p 16 represent the shared resources of the FMS. The Petri net model for an FMS shown in Figure 7 is prompt with deadlocks.
First, the set of sink and source transitions from the Petri net model shown in Figure 7 are Ψ = { t 8 , t 13 } and ϑ = { t 1 , t 4 , t 9 } , respectively. The subnet model is computed by removing all the I / O places in the Petri net model as shown in Figure 8 and then by applying Algorithm 1 to the subnet model shown in Figure 8. The minimal place invariants in the subnet model shown in Figure 8 are I 1 = ( 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 0 ) , I 2 = ( 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 ) , I 3 = ( 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 ) and I 4 = ( 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 )
With their support, I 1 = { p 2 , p 4 , p 12 , p 13 } , I 2 = { p 3 , p 5 , p 11 , p 14 } , I 3 = { p 6 , p 10 } , and I 4 = { p 7 , p 9 , p 16 } , respectively. Using Equations (1)–(5), the working zones are 1 = ( P 1 q , T 1 q , F 1 q ) with P 1 q = { p 2 , p 4 , p 12 , p 13 } , T 1 q = { t 1 , t 2 , t 4 , t 5 } , F 1 q ( P 1 q × T 1 q ) ( T 1 q × P 1 q ) ; 2 = ( P 2 q , T 2 q , F 2 q ) with P 2 q = { p 3 , p 5 , p 11 , p 14 } , T 2 q = { t 2 , t 3 , t 5 , t 6 } , F 2 q ( P 2 q × T 2 q ) ( T 2 q × P 2 q ) ; 3 = ( P 3 q , T 3 q , F 3 q ) with P 3 q = { p 6 , p 10 , p 15 } , T 3 q = { t 3 , t 6 , t 7 , t 10 , t 11 } , F 3 q ( P 3 q × T 3 q ) ( T 3 q × P 3 q ) and 4 = ( P 4 q , T 4 q , F 4 q ) with P 4 q = { p 7 , p 9 , p 16 } , T 4 q = { t 7 , t 8 , t 9 , t 10 } , F 4 q ( P 4 q × T 4 q ) ( T 4 q × P 4 q ) . The decentralized working zones are shown in Figure 9.
Third, the characteristic activity place for the working zones 1 , 2 , 3 and 4 are λ 1 = p 2 + p 4 + p 12 2 , λ 2 = p 3 + p 11 + p 14 1 , λ 3 = p 6 + p 10 + p 15 1 and λ 4 = p 7 + p 9 + p 16 1 , respectively. The global controller is designed using the characteristic activity place for the working zones.
When the decentralized systems are connected to the global controller, the resultant Petri net model shown in Figure 10 is live with maximally permissive behavior of 360 states as shown in Table 2. Table 3 provides a comparison between the proposed method with the previous methods in the literature. From the comparison Table 3, our proposed method can obtain minimal supervisory structure.
Example 2.
Suppose we consider a Petri net model for a flexible manufacturing system (FMS) shown in Figure 11. The FMS consists of three concurrent processes. The places in the Petri net model can be represented as P = P A P R P 0 , where P 0 = { p 1 , p 13 , p 14 } , P R = { p 20 , , p 27 } and P A = { p 2 , , p 12 , p 15 , , p 19 } . Places p 2 , p 3 , and p 4 represent the operations of the production sequence of part P1, respectively. Similarly, places p 5 , p 6 , p 7 , p 8 , p 9 , p 10 , p 11 and p 12 represent that of P2. The places p 15 , p 16 , p 17 , p 18 and p 19 represent the operations of the production sequence of part P3, respectively. Places p 20 , p 21 , p 22 , p 23 , p 24 , p 25 , p 26 and p 27 represent the shared resources. The Petri net model for an FMS shown in Figure 11 is prompt with deadlocks.
First, the set of the sink and source transition from the Petri net model shown in Figure 11 are Ψ = { t 1 , t 5 , t 20 } and ϑ = { t 4 , t 10 , t 11 , t 15 } , respectively. The subnet model is computed by removing all the I / O places from the sink and source transitions in the Petri net model as shown in Figure 11 and then, by applying Algorithm 1 on the Petri net model shown in Figure 12, the subnet model has eight minimal place invariants.
The support of the minimal P-invariants are I 1 = { p 2 , p 9 , p 20 } , I 2 = { p 3 , p 8 , p 21 } , I 3 = { p 4 , p 7 , p 22 } , I 4 = { p 6 , p 16 , p 26 } , I 5 = { p 5 , p 15 , p 27 } , I 6 = { p 12 , p 17 , p 25 } , I 7 = { p 11 , p 18 , p 24 } and I 8 = { p 10 , p 19 , p 23 } . Using Equations (1)–(5), the working zones are 1 = ( P 1 q , T 1 q , F 1 q ) with P 1 q = { p 4 , p 7 , p 22 } , T 1 q = { t 1 , t 2 , t 9 , t 10 , } , F 1 q ( P 1 q × T 1 q ) ( T 1 q × P 1 q ) ; 2 = ( P 2 q , T 2 q , F 2 q ) with P 2 q = { p 3 , p 8 , p 21 } , T 2 q = { t 2 , t 3 , t 8 , t 9 } , F 2 q ( P 2 q × T 2 q ) ( T 2 q × P 2 q ) ; 3 = ( P 3 q , T 3 q , F 3 q ) with P 3 q = { p 4 , p 7 , p 22 } , T 3 q = { t 3 , t 4 , t 7 , t 8 } , F 3 q ( P 3 q × T 3 q ) ( T 3 q × P 3 q ) ; 4 = ( P 4 q , T 4 q , F 4 q ) with P 4 q = { p 6 , p 16 , p 26 } , T 4 q = { t 6 , t 7 , t 14 , t 16 , t 17 } , F 4 q ( P 4 q × T 4 q ) ( T 4 q × P 4 q ) ; 5 = ( P 5 q , T 5 q , F 5 q ) with P 5 q = { p 5 , p 15 , p 27 } , T 5 q = { t 5 , t 6 , t 15 , t 16 } , F 5 q ( P 5 q × T 5 q ) ( T 5 q × P 5 q ) ; 6 = ( P 6 q , T 6 q , F 6 q ) with P 6 q = { p 12 , p 17 , p 25 } , T 6 q = { t 13 , t 14 , t 17 , t 18 } , F 6 q ( P 6 q × T 6 q ) ( T 6 q × P 6 q ) ; 7 = ( P 7 q , T 7 q , F 7 q ) with P 7 q = { p 11 , p 18 , p 24 } , T 7 q = { t 12 , t 13 , t 18 , t 19 } , F 7 q ( P 7 q × T 7 q ) ( T 7 q × P 7 q ) and 8 = ( P 8 q , T 8 q , F 8 q ) with P 8 q = { p 10 , p 19 , p 23 } , T 8 q = { t 11 , t 12 , t 19 , t 20 } , F 8 q ( P 8 q × T 8 q ) ( T 8 q × P 8 q ) . The working zones are shown in Figure 13.
Third, the characteristic activity place associated with the working zones 1 , 2 , 3 , 4 , 5 , 6 , 7 and 8 , respectively, are p 2 + p 9 + p 20 1 , p 3 + p 8 + p 21 2 , p 4 + p 7 + p 22 1 , p 6 + p 16 + p 26 1 , p 5 + p 15 + p 27 1 , p 12 + p 17 + p 25 2 , p 11 + p 18 + p 24 2 and p 10 + p 19 + p 23 1 . The global controller is computed using the characteristic activity places, and its detailed behaviour of the global controller is presented in Table 4.
When the decentralized systems are connected to the global controller, the resultant Petri net model shown in Figure 12 is live with maximally permissive behavior of 52,488 states. Table 5 provides a comparison between our proposed method with the previous methods in the literature. According to the table shown in Table 5, our proposed method can obtain only one controlled place to enforce the liveness of the Petri net model shown in Figure 12. The controlled Petri nets are presented in Figure 14.

6. Discussion

The proposed method reduces the computational complexity when compared with the traditional method available in the literature as it avoids the computation of the reachability graph that leads to state explosion problems. Our proposed method utilized the structural analysis to decompose the Petri net model into working zones and later design a global controller for the decentralized working zones without solving integer linear programming problems (ILLPs) as adopted mostly in the literature. The ILLP method cannot solve the large sized Petri nets because it generates a lot of variables and it is NP-hard.
A supervisor is said to have less structural complexity when it has less control places that can be added to the uncontrolled Petri net model. From Table 3 and Table 5 of our proposed manuscript, our proposed method only has one control place with 32 and 54 control arcs, respectively, when compared with the existing policy in the literature. It shows that our proposed method has less structural complexity. The advantage derived from having a single controller is to reduce the structural complexity and henceforth reduce the cost of the implementation and maintenance when validated. The proposed method can work on an S 3 PR Petri net for flexible manufacturing systems more specifically for the robotic assembling line cell and transportation systems.
An assembling line cell manufacturing usually processed parts in different work zones. Parts are added through the input/output (buffer) to the first work zone in the concurrent process to add a semi-finished good (processed the part) and then move it to the next immediate next working zone for further processing. Similarly, this procedure continues until all the work zones have processed the parts in sequence along the concurrent process of the Petri net model. However, a system with multiple concurrent processes exists in real assembling cells such as the one we model in this proposed paper. The activity places from different processes of the Petri net model can process parts simultaneously from the first work zone to the last working zone in the assembling line cell.
Our proposed method can work on intelligent transportation systems such as an automatic guided vehicle (AGV), modern railways, traffic signal control systems, and parking guidance and information systems. The AGVs work based on working zone areas to avoid collision and deadlocks and to enhance the effectiveness of the systems. In a system of multiple AGVs, each AGV has its assigned working zones that can move to deliver goods to the specified station freely without coincidence to another AGV in the systems. Modern railway stations have multiple railway lines with various trains in the systems. To avoid deadlocks in the systems, each train has assigned working zone areas that can operate from one station to the next available station until it reaches a final destination. Similarly, traffic signal control systems and parking guidance systems work based on working zone areas. In traffic control, the working zones are the lanes of the road control by the traffic lamp while, in the car parking systems, the working zones are on the floor level of the systems.

7. Conclusions

This paper presents a new method for designing a global supervisory structure for decentralized systems using a Petri net model with an S 3 PR structure. The proposed method developed two algorithms. First, Algorithm 1 is used to compute the decentralized working zones from the subnet model N . Algorithm 2 is used to design the global controller for the decentralized working zones computed by Algorithm 1. A ring assembling method is presented to design the global controller for the decentralized working zones that are responsible for reconnecting and controlling the operations of all the decentralized systems. The proposed method has these advantages: (i) it can be applied to a complex Petri net model for flexible manufacturing systems based on the fact that the proposed method can divide the system into several sub-problems; (ii) it has less computational complexity for the computation of the global controller; and (iii) the proposed method can obtain a minimal number of decentralized controllers to enforce liveness of the uncontrolled Petri net model.

Author Contributions

Conceptualization, M.B.; Methodology, M.B.; Formal Analysis, M.B.; Writing—Original Draft Preparation, M.B.; Writing—Review & Editing, L.H.; Supervision, L.H.; Project Administration, L.H.; Funding Acquisition, L.H.

Funding

This research was funded by the National Science Basic Research Plan in Shaanxi Province of China under Grant No. 2018JM6089.

Acknowledgments

The authors acknowledge the School of Electronics and Information of Xi’an Polytechnic University, 710048, China for the support given to conduct this research.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Lacerda, B.; Lima, P.U. LTL-Based Decentralized Supervisory Control of Multi-Robot Tasks Modelled as Petri Nets. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, San Francisco, CA, USA, 25–30 September 2011; pp. 3081–3086. [Google Scholar]
  2. Palomeras, N.; Ridao, P.; Silvestre, C.; El-fakdi, A. Multiple vehicles mission coordination using Petri nets. In Proceedings of the IEEE International Conference on Robotics and Automation, Anchorage, AK, USA, 3–8 May 2010; pp. 3531–3536. [Google Scholar]
  3. Lee, J.S.; Wang, Y.M. A Preliminary Application of Petri Nets to the Supervision of Remotely Operated Systems. In Proceedings of the IECON 2010-36th Annual Conference on IEEE Industrial Electronics Society, Glendale, AZ, USA, 7–10 November 2010; pp. 2145–2149. [Google Scholar]
  4. Lee, J.S.; Zhou, M.C.; Hsu, P.L. A Petri-Net Approach to Modular Supervision With Conflict Resolution for Semiconductor Manufacturing Systems. IEEE Trans. Autom. Sci. Eng. 2007, 4, 584–588. [Google Scholar] [CrossRef]
  5. Lee, J.S.; Zhou, M.C.; Hsu, P.L. An application of Petri nets to supervisory control for human-computer interactive systems. IEEE Trans. Ind. Electr. 2005, 52, 1220–1226. [Google Scholar] [CrossRef]
  6. Dou, C.; Lv, M.F.; Zhao, T.Y.; Ji, Y.P.; Li, H. Decentralised coordinated control of micro-grid based on multi-agent system. IET Gener. Transm. Distrib. 2015, 9, 2474–2484. [Google Scholar] [CrossRef]
  7. Hei, X.; Takahashi, S.; Hideo, N. Toward developing a Decentralized Railway Signalling System Using Petri Nets. In Proceedings of the 2008 IEEE Conference on Robotics, Automation and Mechatronics, Chengdu, China, 21–24 September 2008; pp. 851–855. [Google Scholar]
  8. Loures, E.R.; dos Santos, E.A.P.; Busetti de Paula, M.A. Maintenance integration in a modular supervision framework based on Petri net with objects. Application to a robot-driven flexible cell. In Proceedings of the 2006 IEEE International Conference on Information Reuse & Integration, Waikoloa Village, HI, USA, 16–18 September 2006; pp. 69–74. [Google Scholar]
  9. Herrero-Pérez, D.; Martínez-Barberaá, H. Modeling Distributed Transportation Systems Composed of Flexible Automated Guided Vehicles in Flexible Manufacturing Systems. IEEE Trans. Ind. Inf. 2010, 6, 166–180. [Google Scholar] [CrossRef]
  10. Hou, Y.; Zhao, M.; Liu, D.; Hong, L. An Efficient Siphon-Based Deadlock Prevention Policy for a Class of Generalized Petri Nets. Discret. Dyn. Nat. Soc. 2016, 2016. [Google Scholar] [CrossRef]
  11. Safae, C.; Salma, M. Modelling and Simulation of Biochemical Processes Using Petri Nets. Processes 2018, 6, 97. [Google Scholar] [CrossRef]
  12. Dimitri, L. Dynamical Scheduling and Robust Control in Uncertain Environments with Petri Nets for DESs. Processes 2017, 5, 54. [Google Scholar] [CrossRef]
  13. Gu, C.; Li, Z.W.; Al-Ahmari, A. A Multistep Look-Ahead Deadlock Avoidance Policy for Automated Manufacturing Systems. Discret. Dyn. Nat. Soc. 2017, 2017. [Google Scholar] [CrossRef]
  14. Wang, S.G.; Wang, C.Y.; Zhou, M.C. A transformation algorithm for optimal admissible generalized mutual exclusion constraints on Petri nets with uncontrollable transitions. In Proceedings of the 2011 IEEE International Conference on Robotics and Automation, Shanghai, China, 9–13 May 2011; pp. 3745–3750. [Google Scholar]
  15. Huang, Y.S.; Pan, Y.L.; Su, P.J. Transition-based deadlock detection and recovery policy for FMSs using graph technique. ACM Trans. Embed. Comput. Syst. 2013, 12. [Google Scholar] [CrossRef]
  16. Li, Z.W.; Wu, N.Q.; Zhou, M.C. Deadlock control of automated manufacturing system based on Petri nets—A literature review. IEEE Trans. Syst. Man Cybern. Part C 2012, 42, 437–460. [Google Scholar]
  17. Ye, J.H.; Li, Z.W.; Giua, A. Decentralized Supervision of Petri Nets With a Coordinator. IEEE Trans. Syst. Man Cybern. Syst. 2015, 45, 955–966. [Google Scholar]
  18. Yoo, T.S.; Lafortune, S. Decentralized Supervisory Control With Conditional Decisions: Supervisor Realization. IEEE Trans. Autom. Control 2005, 50, 1205–1211. [Google Scholar]
  19. Cai, K.; Wonham, W.M. Supervisor Localization for Large-Scale Discrete-Event Systems. In Proceedings of the Joint 48th IEEE Conference on Decision and Control and 28th Chinese Control Conference, Shanghai, China, 16–18 December 2009; pp. 3099–3105. [Google Scholar]
  20. Komenda, J.; van Schuppen, J.H. Modular control of discrete-event systems with coalgebra. IEEE Trans. Autom. Control 2008, 53, 447–460. [Google Scholar] [CrossRef]
  21. Wong, K.C.; Lee, S. Structural decentralized control of concurrent discrete-event systems. Eur. J. Control 2002, 8, 477–491. [Google Scholar]
  22. Mannani, A.; Gohari, P. Decentralized supervisory control of discrete-event systems over communication networks. IEEE Trans. Autom. Control 2008, 53, 547–559. [Google Scholar] [CrossRef]
  23. Bashir, M.; Muhammad, B.B.; Li, Z.W. Minimal supervisory structure for flexible manufacturing system using Petri nets. In Proceedings of the IEEE International Conference on Control, Automation and Robotics, Hongkong, China, 28–30 April 2016; pp. 291–296. [Google Scholar]
  24. Bashir, M.; Li, Z.W.; Uzam, M.; Wu, N.Q.; Al-Ahmari, A. On structural reduction of liveness-enforcing Petri net supervisors for flexible manufacturing systems: An algebraic approach. IMA J. Math. Control Inf. 2017. [Google Scholar] [CrossRef]
  25. Bashir, M.; Li, Z.W.; Uzam, M.; Al-Ahmari, A.; Wu, N.Q.; Liu, D.; Qu, T. A Minimal Supervisory Structure to Optimally Enforce Liveness on Petri Net Models for Flexible Manufacturing Systems. IEEE Access 2017, 5, 15731–15749. [Google Scholar] [CrossRef]
  26. Bashir, M.; Liu, D.; Uzam, M.; Al-Ahmari, A.; Wu, N.Q.; Li, Z.W. Optimal Enforcement of Liveness to Flexible Manufacturing Systems Modeled with Petri Nets via Transition-based Controllers. SAGE J. Adv. Mech. Eng. (AIME) 2018, 10. [Google Scholar] [CrossRef]
  27. Chen, Y.F.; Li, Z.W.; Barkaoui, K.; Giua, A. On the enforcement of a class of nonlinear constraints on Petri nets. Automatica 2015, 55, 116–124. [Google Scholar] [CrossRef] [Green Version]
  28. Ye, J.; Zhou, M.C.; Li, Z.W.; Al-Ahmari, A. Structural Decomposition and Decentralized Control of Petri Nets. IEEE Trans. Syst. Man Cybern. Syst. 2017. [Google Scholar] [CrossRef]
  29. Li, Z.W.; Zhu, S.; Zho, M.C. A Divide-and-Conquer Strategy to Deadlock Prevention in Flexible Manufacturing Systems. IEEE Trans. Syst. Man Cybern. Part C 2009, 39, 156–169. [Google Scholar]
  30. Uzam, M.; Li, Z.W.; Gelen, G.; Zakariyya, R.S. A divide-and-conquer-method for the synthesis of liveness enforcing supervisors for flexible manufacturing systems. J. Intell. Manuf. 2016, 27, 1111–1129. [Google Scholar] [CrossRef]
  31. Iordache, M.V.; Antsaklis, P.J. Decentralized Supervision of Petri Nets. IEEE Trans. Autom. Control 2006, 51, 376–381. [Google Scholar] [CrossRef]
  32. Lee, E.J.; Toguyeni, A.; Dangoumau, N. A Petri Net based Decentralized Synthesis Approach for the Control of Flexible Manufacturing Systems. In Proceedings of the IMACS Multiconference on “Computational Engineering in Systems Applications”(CESA), Beijing, China, 4–6 October 2006; pp. 1497–1503. [Google Scholar]
  33. Gasparri, A.; Paola, D.D.; Giua, A.; Ulivi, G.; Naso, D. Consensus-Based Decentralized Supervision of Petri nets. In Proceedings of the 50th IEEE Conference on Decision and Control and European Control Conference (CDC-ECC), Orlando, FL, USA, 12–15 December 2011; pp. 1128–1135. [Google Scholar]
  34. Basile, F.; Cordone, R.; Piroddi, L. A branch and bound approach for the design of decentralized supervisors in Petri net models. Automatica 2015, 52, 322–333. [Google Scholar] [CrossRef]
  35. Luo, J.; Zhou, M.C. Petri-net controller synthesis for partially controllable and observable discrete event systems. IEEE Trans. Autom. Control 2017, 62, 1301–1313. [Google Scholar] [CrossRef]
  36. Bourjij, A.; Boutayeb, M.; Cecchin, T. A Decentralized Approach for Computing Invariants in Large Scale and Interconnected Petri Nets. In Proceedings of the 1997 IEEE International Conference on Systems, Man, and Cybernetics, Computational Cybernetics and Simulation, Orlando, FL, USA, 12–15 October1997; pp. 1741–1746. [Google Scholar]
  37. Ezpeleta, J.; Colom, J.M.; Martinez, J. A Petri net based deadlock prevention policy for flexible manufacturing systems. IEEE Trans. Robot. Autom. 1995, 11, 173–184. [Google Scholar] [CrossRef] [Green Version]
  38. Chu, F.; Xie, X.L. Deadlock analysis of Petri nets using siphons and mathematical programming. IEEE Trans. Robot. Autom. 1997, 13, 793–804. [Google Scholar]
Figure 1. Flexible manufacturing layout.
Figure 1. Flexible manufacturing layout.
Processes 07 00595 g001
Figure 2. (a) Petri net model ( N , M 0 ) ; (b) a subnet model N = ( N , M 0 ) with N = ( P , T , F ) .
Figure 2. (a) Petri net model ( N , M 0 ) ; (b) a subnet model N = ( N , M 0 ) with N = ( P , T , F ) .
Processes 07 00595 g002
Figure 3. Decentralized working zones.
Figure 3. Decentralized working zones.
Processes 07 00595 g003
Figure 4. Block diagram of global controllers using ring assembling.
Figure 4. Block diagram of global controllers using ring assembling.
Processes 07 00595 g004
Figure 5. Petri net model with a global controller.
Figure 5. Petri net model with a global controller.
Processes 07 00595 g005
Figure 6. Controlled Petri net model.
Figure 6. Controlled Petri net model.
Processes 07 00595 g006
Figure 7. Petri net model for an FMS.
Figure 7. Petri net model for an FMS.
Processes 07 00595 g007
Figure 8. A subnet model ( N , M 0 ) for an FMS.
Figure 8. A subnet model ( N , M 0 ) for an FMS.
Processes 07 00595 g008
Figure 9. A subnet model N = ( N , M 0 ) with N = ( P , T , F ) .
Figure 9. A subnet model N = ( N , M 0 ) with N = ( P , T , F ) .
Processes 07 00595 g009
Figure 10. A controlled Petri net model ( N c , M 0 c ) .
Figure 10. A controlled Petri net model ( N c , M 0 c ) .
Processes 07 00595 g010
Figure 11. Petri net model for an FMS.
Figure 11. Petri net model for an FMS.
Processes 07 00595 g011
Figure 12. A subnet model for ( N , M 0 ) .
Figure 12. A subnet model for ( N , M 0 ) .
Processes 07 00595 g012
Figure 13. Decentralized subnets of Petri net model for FMS.
Figure 13. Decentralized subnets of Petri net model for FMS.
Processes 07 00595 g013
Figure 14. Controlled Petri net ( N c , M 0 c ) model using a global controller.
Figure 14. Controlled Petri net ( N c , M 0 c ) model using a global controller.
Processes 07 00595 g014
Table 1. Overall decentralized controllers for the Petri net model are shown in Figure 2.
Table 1. Overall decentralized controllers for the Petri net model are shown in Figure 2.
Characteristic Activity Place C i PrePost β C
p 1 + p 2 + p 3 + p 4 + p 5 + p 6 + C t 2 , t 3 , t 4 , t 5 , t 6 , t 1 , t 2 , t 3 , t 4 , t 5 5
p 7 + p 8 + p 9 + p 10 5 t 8 , t 9 , t 11 , t 12 t 7 , t 8 , t 9 , t 10 , t 11
Table 2. Behavior of the controlled Petri net model from the minimal to maximum initial marking.
Table 2. Behavior of the controlled Petri net model from the minimal to maximum initial marking.
kReachable StatesIs It Optimal?Is It Live?
111NoYes
β C = 5 254NoYes
1 k β C 3156NoYes
4288NoYes
5360YesYes
Table 3. Performance comparison of the proposed method with some of the available methods in the literature.
Table 3. Performance comparison of the proposed method with some of the available methods in the literature.
MethodsNo. of ControllersNo. of Control ArcsNo. of Reachable States
 [29]528151
[27]528151
[26]630360
Proposed method132360
Table 4. Behaviour of the controlled Petri net model from the minimal to maximum initial marking.
Table 4. Behaviour of the controlled Petri net model from the minimal to maximum initial marking.
kReachable StatesIs It Optimal?Is It Live?
117NoYes
2138NoYes
β C = 11 3712NoYes
42615NoYes
1 k β C 57251NoYes
615,730NoYes
727,392NoYes
839,240NoYes
947,736NoYes
1051,624NoYes
1152,488YesYes
Table 5. Performance comparison of the proposed method with some of the available methods in the literature.
Table 5. Performance comparison of the proposed method with some of the available methods in the literature.
MethodsNo. of ControllersNo. of Control ArcsNo. Reachable States
 [27]154535,254
[29]125635,254
[26]65652,488
Proposed method15452,488

Share and Cite

MDPI and ACS Style

Bashir, M.; Hong, L. Global Supervisory Structure for Decentralized Systems of Flexible Manufacturing Systems Using Petri Nets. Processes 2019, 7, 595. https://doi.org/10.3390/pr7090595

AMA Style

Bashir M, Hong L. Global Supervisory Structure for Decentralized Systems of Flexible Manufacturing Systems Using Petri Nets. Processes. 2019; 7(9):595. https://doi.org/10.3390/pr7090595

Chicago/Turabian Style

Bashir, Muhammad, and Liang Hong. 2019. "Global Supervisory Structure for Decentralized Systems of Flexible Manufacturing Systems Using Petri Nets" Processes 7, no. 9: 595. https://doi.org/10.3390/pr7090595

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