Next Article in Journal
Hybrid N-BEATS-Based Method for Equipment Assessment and System Risk Prediction in Urban Power Grids
Previous Article in Journal
Harmonic Suppression and Circulating Current Mitigation in Parallel Active Power Filters Using Dual-Comparison One-Cycle Control
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Siphon-Based Deadlock Prevention of Complex Automated Manufacturing Systems Using Generalized Petri Nets

by
František Čapkovič
Institute of Informatics, Slovak Academy of Sciences, 84507 Bratislava, Slovakia
Electronics 2025, 14(24), 4889; https://doi.org/10.3390/electronics14244889
Submission received: 29 July 2025 / Revised: 28 October 2025 / Accepted: 7 November 2025 / Published: 12 December 2025
(This article belongs to the Section Artificial Intelligence)

Abstract

Modern AMSs (automated manufacturing systems) on the one hand bring many benefits, but on the other hand, they are cumbersome to coordinate. AMSs consist of various subsystems (e.g., production lines) that share a finite number of resources (robots, machines, buffers, automated guided vehicles, etc.). This forces AMS designers to build flexible and decentralized systems. However, in these cases, the danger of deadlocks exists. Consequently, such a situation requires the application of advanced supervisors. One solution to the deadline problem is the application of Petri nets. This paper is motivated by AMS control based on deadlock prevention by means of ordinary Petri nets (OPNs) and generalized Petri nets (GPNs). This paper examines two areas of AMS Petri net-based model structures and presents methods of deadlock prevention. First, simpler structures of AMSs modeled by OPNs and GPNs will be investigated, and then more complex structures of AMSs modeled by the same kinds of Petri nets (PNs) will be analyzed. The siphon-based approach will be used for deadlock prevention in all of these cases. The principal results are introduced, explained, and illustrated through examples. Key results are introduced, especially in Example 1 and Example 2.

1. Introduction

Automated manufacturing systems (AMSs), often called flexible manufacturing systems (FMSs), are systems consisting of a set of production robotic cells and lines capable of automatically producing a variety of piece types (parts) simultaneously. They are discrete-event systems (DESs) and are controlled by computers. AMSs pose a high degree of automation, integration, and flexibility far beyond traditional forms of handling with raw materials and parts in manufacturing systems. Petri nets (PNs) are frequently used in modeling AMSs and in their supervisory control synthesis. It is useful when both the plant itself and its supervisor can be modeled by such a uniform formalism.
This research area dates back more than four decades. A very important part of this research is the problem of allocation of resources. Resource allocation systems (RASs) with shared resources contain many proposed methodologies. Practically all of the papers referred here, except [1,2], use siphons for deadlock prevention. These two articles deal with reachability graphs and graphs in general, respectively.
There are many subclasses of PN models in the literature—see, e.g., Table 1 in [3], where 27 subclasses are presented with their full names and shortcuts, and it is also stated there whether a given subclass belongs to ordinary or generalized Petri nets.
It is necessary to mention Systems of Simple Sequential Processes with Resources ( S 3 PR) and Extended S 3 PR ( ES 3 PR), which are both used very frequently. In addition, Systems of Simple Sequential Processes with General Resource Requirements ( S 3 PGR 2 ) are used (e.g., in [4,5,6,7,8]), and a Generalized Linear System of Simple Sequential Processes with Resources ( GLS 3 PR) is used in [9], which is a subclass of S 4 R [10,11]. The same class of resource acquisition behavior, named as the S 4 PR (Simple Systems of Simple Sequential Processes with Resources) net structure, was originally proposed in [12] and mentioned as well in [5], where strict minimal siphons are also further elaborated with the intent of avoiding the necessity to find all elementary siphons. Further works in the area of GPNs and S 4 PR include [5,6,9,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26].
There are three principal strategies for dealing with deadlocks. (i) Deadlock detection and recovery [27,28,29,30,31,32] is usually used in cases where deadlocks are not so frequent and the consequences are not too serious. (ii) Deadlock prevention (see e.g., [4,9,10,15,16,17,18,19,20,26,31,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47]) restricts interactions among resources and their users; requests for resources have to be prevented because they may lead to deadlocks. (iii) Deadlock avoidance ([11,15,28,31,36,48,49,50]) assigns a resource to a user only if the consequential state is not a deadlock. This paper examines only the deadlock prevention strategy.
This paper is a free continuation of the author’s previous paper [34]. Here, not only simple AMS models but also more complex AMS models, based on ordinary PNs (OPNs) and/or generalized PNs (GPNs), will be presented. The deadlock prevention strategy will be in all cases based on siphons. Siphons are [51] immediately related to deadlocks. Some authors in older studies, e.g., in [52,53], even identify siphons with deadlocks. Therefore, siphons are often utilized in the analysis and control of deadlocks. Any Petri net has a reachability tree/graph unambiguously that belongs to it. Hence, such a tree/graph is very suitable for verifying the deadlock’s absence. In this paper, no other quantitative metrics are utilized. Of course, there exist papers—see, e.g., [54,55]—where such research is performed. This paper is based on logical inconsistency measures. Observable PN liveness is analyzed in [56]. Some other papers devoted to deadlock detection are presented, e.g., in [57], where PN decomposition techniques are applied, such as in [58], and in [59,60], a transitive matrix of resource share places is used.
In order to verify the deadlock’s absence, reachability trees/graphs will be used in this paper.

1.1. Multisets

Multisets will be used to simplify the complexity of the problems. A more comprehensive definition of a multiset follows:
Definition 1 
([33]). A multiset Ω, over a non-empty set A, is a mapping Ω : A N , which we represent as a formal sum a A Ω ( a ) . a . A multiset is a generalization of the concept of a set. In multiset Ω, non-negative integer Ω ( a ) is the coefficient of element a A , indicating the number of occurrences of a in Ω. It is said that a A belongs to Ω, which is denoted by a Ω , if Ω ( a ) > 0 . It does not belong to Ω, as denoted by a Ω , if Ω ( a ) = 0 . Let Ω 1 and Ω 2 be two multisets. The basic operations on multisets are union, intersection, addition, difference, and comparison, which are defined, respectively, as follows:
  • Ω 1 Ω 2 : = a A m a x { Ω 1 ( a ) , Ω 2 ( a ) } . a ;
  • Ω 1 Ω 2 : = a A m i n { Ω 1 ( a ) , Ω 2 ( a ) } . a ;
  • Ω 1 + Ω 2 : = a A ( Ω 1 ( a ) + Ω 2 ( a ) ) . a ;
  • Ω 1 Ω 2 : = a A ( Ω 1 ( a ) ( Ω 1 Ω 2 ) ( a ) ) . a ;
  • Ω 1 Ω 2 a Ω 1 , Ω 1 ( a ) Ω 2 ( a ) ;
  • Ω 1 < Ω 2 a Ω 1 , Ω 1 ( a ) < Ω 2 ( a ) .

Example of Applications

A few micro-examples are provided here to demonstrate what it is like working with multisets. Let Ω 1 = a + b , Ω 2 = 2 a + b + c , and Ω 3 = 3 a + 2 c be three multisets over A = { a , b , c } . We have Ω 1 Ω 2 = 2 a + b + c , Ω 1 Ω 3 = 3 a + b + 2 c , Ω 1 Ω 3 = a , Ω 2 Ω 3 = 2 a + c , Ω 1 + Ω 2 = 3 a + 2 b + c , Ω 1 Ω 2 = , Ω 3 Ω 1 = 2 a + 2 c , Ω 3 Ω 2 = a + c , and Ω 1 < Ω 2 . It can be said that multiset Ω 1 is less than Ω 2 if Ω 1 < Ω 2 and Ω 2 is greater than or equal to Ω 1 if Ω 1 Ω 2 . A multiset without any element is denoted by ∅ (i.e., as an empty set). If the multiplicity of every element is one, a multiset becomes a set.
With respect to [14], a multiset Ω , over a non-empty set D, is a mapping Ω : D N , which is denoted as a formal sum d D Ω ( d ) · d .
Here, N represents the set of natural numbers plus zero.

1.2. Aim of the Paper

The main aim of this paper is to resolve situations related to AMS control when the capacity for resources is minimal. In the case of OPN models of AMSs, these are the situations when the marking of places representing resources are equal to one. In case of GPN models of AMSs, these are the situations when the marking of the place representing a resource is equal to the weight of the arc, which is greatest out of all of the weights of arcs directed to output transitions.
In such cases, it is not so much a matter of computational complexity as it is of finding a solution that exists when other approaches fail.
The subgoal is also to compare the results with those obtained using complementary siphons.
Example 1 demonstrates the case of an OPN model of an AMS with limited resources using siphons to prevent deadlocks, while Example 2 uses complementary siphons for the same case. By comparing the results in the form of reachability graphs, it was found that the results obtained in Example 1 for deadlock prevention are better than those obtained in Example 2.
As mentioned above, this paper is a free continuation of the paper [34], where a case of deadlock prevention of the ES 3 PR model of an AMS was presented. Here, five examples are presented. Three of them—Examples 1, 2, and 4—concern S 3 PR kinds of OPN models, while the remaining two—Examples 3 and 5—concern S 4 PR kinds of GPN models.

1.3. Structure of the Article

In Section 2, basic knowledge about Petri nets is introduced. The conditions and constraints of the controllability of siphons are introduced in Section 3. Both OPN-based and GPN-based models of AMSs are analyzed. Definitions, lemmas, propositions and theorems concerning the siphon-based control are introduced here. All of them include references to the original literature. Procedures that ensure the parameters of supervisors and the deadlock-freeness are introduced here as well.
Section 4 is devoted to four illustrative examples (Examples 1–4) documenting the results of the supervisory control of particular paradigms of AMS models. Two categories of AMS models are introduced—models with a simpler structure based either on an OPN (Example 1 in Section 4.1 and Example 2 in Section 4.2) or on a GPN (Example 3 in Section 4.3) and the model with a more complex structure based on an OPN (Example 4 in Section 4.4). In Section 5, the approach to deadlock prevention in S 4 PR models of AMSs based on GPNs is presented and illustrated by Example 5 in Section 5.2.
Finally, the standard sections (Section 6, Section 7 and Section 8 and References) are introduced.

2. Basics of Petri Nets

A short introduction to the Petri net topic was already made in [34]. However, it is necessary to introduce the basics of them here as well.
A Petri net is a quadruplet N = ( P , T , F , W ) where P and T are finite non-empty sets; the set of places P = { p 1 , p 2 , , p n } ( | P | = n ) while the set of transition T = { t 1 , t 2 , , t m } ( | T | = m ) , whereby it is true that P T and P T = ; ∅ means an empty set. The set F = ( P × T ) ( T × P ) expresses the flow relation in N. Flows consist of both directed arcs from the places to transitions and vice versa. The mapping W : ( P × T ) ( T × P ) N assigns a weight to an arc: W ( f ) > 0 if f F and W(f) = 0 otherwise. Here, N = { 0 , 1 , 2 , } represents the set of natural numbers plus zero. The net N where f F , W ( f ) = 1 , is the ordinary Petri net (OPN) N = ( P , T , F ) . If f F , W ( f ) > 1 , the net N = ( P , T , F , W ) is the generalized net (GPN).
A transition without input places is called a source transition and a transition without output places is called a sink transition. Source transitions are always enabled, while the firing of a sink transition generates no tokens. Sink transitions are only consuming (devouring) tokens.
A place p P in N is marked at marking M if M ( p ) > 0 . A place p P is insufficiently marked with respect to a transition t p at M if M ( p ) < W ( p , t ) . The symbol p denotes the set of output transitions emerging from the place p. If at least one place in a subset S P is marked at M, then S is marked at M. M ( S ) denotes the sum of tokens in all places in S, i.e., M ( S ) = p S M ( p ) . If M ( S ) = 0 , S is said to be empty at M. If p S , t p , M ( p ) < W ( p , t ) , S is said to be insufficiently marked at M.
A subset D P is marked by M if and only if at least one place p D is marked by M. Thus, M ( D ) = p D M ( p ) represents the sum of tokens in all places in D.
In general, x = { y P T | ( y , x ) F } is the preset of a node x P T , while x = { y P T | ( x , y ) F } is the postset of a node x P T .
Let a marked ordinary Petri net be ( N , M ) . A transition t is enabled at M, expressed by M [ t > , if p t , M ( p ) > 0 . An enabled transition t at M can be fired. Consequently, a new marking M 1 arises. It may be denoted by M [ t > M 1 , where M 1 ( p ) = M ( p ) 1 , p t t ; M 1 ( p ) = M ( p ) + 1 , p t t ; otherwise, M 1 ( p ) = M ( p ) .
A PN marking M is an ( n × 1 ) vector. It is frequently called a state vector. The evolution of PN marking is performed by means of the following relationship:
M k + 1 = M k + [ N ] . σ k , k N
where M 0 is an initial marking, [ N ] is the incidence matrix, and σ k : T N is a vector of non-negative integers, which is called a firing vector. Elements of σ k ( t ) indicate the algebraic sum of all occurrences of t in σ k . The set of all markings reachable from M by firing any possible sequence of transitions is denoted as R ( N , M ) . R ( N , M 0 ) is the set of reachable markings of a Petri net starting from the initial marking M 0 .
Equation (1) constitutes the mathematical model of the Petri net N. The matrix [ N ] = [ P o s t ] T [ P r e ] is the ( n × m ) incidence matrix. It presents the matrix form of the set F. It can also be written in the shape [ N ] ( p , t ) = W ( t , p ) W ( p , t ) . Finally, σ k is an ( m × 1 ) vector expressing the firing of transitions. It can also be called the control vector because it represents the state of transitions. When a transition t i is enabled (i.e., able to be fired), the i-th element of the vector σ k is indicated by 1. In the opposite case, when the transition is disabled, it is indicated by 0. It is important is to say that the enabled transition may or may not be fired. The marking M ( p ) of a place p is an integer indicating the number of tokens located in this place. The place p is marked by M if and only if M ( p ) > 0 .
A non-empty subset of places S P is a siphon if and only if S S . A non-empty subset of places Q P is a trap if and only if Q Q . A siphon S is minimal if and only if there is no siphon contained in it as a proper subset. A minimal siphon S is said to be strict if S S . When a minimal siphon S does not contain a marked trap, it is called a strict minimal siphon (SMS). Such siphons have to be controlled in order to prevent their emptying.
Siphons are extensively used in a large amount of approaches concerning the deadlock control and liveness-enforcing for both OPN and GPN models of AMSs.
A siphon (trap) S (Q) is said to be empty at marking M if and only if M ( S ) = 0 ( M ( Q ) = 0 ).
S or Q is said to be max-marked (min-marked) at a marking M if and only if p S or p Q such that M ( p ) m a x p ( M ( p ) m i n p ) , where m a x p = m a x t p ( W ( p , t ) ) ( m i n p = m i n t p ( W ( p , t ) ) ) .
As to [61] and many other sources, P-invariant (place invariant) and T-invariant (transition invariant) are two weighty structural properties of PNs that are important in mathematical computations with PN models of AMSs.
It is necessary to emphasize that a P-vector is a column vector I : P Z (indexed by P), where Z is the set of all integers. A P-vector I is called P-invariant if I 0 and I T [ N ] = 0 T . A P-invariant is minimal if and only if it contains no P-invariant as a proper subset. A P-invariant I is P-semiflow if every element of I is non-negative. | | I | | is named the support of a P-invariant. It is defined as | | I | | = { p | I ( p ) 0 } .
A T-vector is a column vector D : P Z (indexed by T). A T-vector D is called T-invariant if D 0 and [ N ] D = 0 . The support of a T-invariant is defined as | | D | | = { t | D ( t ) 0 } .

3. Siphon Controllability Conditions and Constraints

In the literature, there is a galaxy of articles that deal with the control of DESs, AMSs, and FMSs. A large number of them use Petri nets (PNs) of different kinds to model and control such systems. Some papers use an approach based on P-invariants of the PN model—see, e.g., [62], but many more papers use approaches based on PN siphons. Among these, the following are worthy of mention [5,7,8,13,35,38,41,42,43,44,45,57,62,63,64,65,66,67,68,69,70,71,72]. Some of the definitions, properties, lemmas and theorems used in this paper have been taken from other literature. For each such item, there is a corresponding reference to the authors. Also, some PhD theses are well known in this area—see, e.g., [49,73,74].
Here, in this section, particular classes of PN models will be analyzed: first, AMS models based on ordinary Petri nets (OPNs), being represented by means of S 3 PRs, and then those models based on generalized Petri nets (GPNs).

3.1. Systems of Simple Sequential Processes with Resources ( S 3 PRs)

Definition 2 
([40]). A System of Simple Sequential Processes with Resources ( S 3 PR) is defined as a union of a set of nets N i = ( P i { p i 0 } P R i , T i , F i ) sharing common places, where the following statements are true:
1. 
p i 0 is called the process idle place of N i . Places from sets P i and P R i are called operation and resource places, respectively.
2. 
(a) P R i , P i , p i 0 P i , ( P i { p i 0 } ) P R i = ;
(b) p P i , t p , t p , r p P R i , t P R i = t P R i = { r p } ;
(c) The two following statements are verified: (i) r P R i , r P i = r P i and (ii) r P R i , r r = ;
(d) ( p i 0 ) P R i = ( p i 0 ) P R i = .
3. 
i j , T i T j = .
4. 
N i is a strongly connected state machine, where N i = ( P i { p i 0 } , T i , F i ) is the resultant net after the places in P R i and related arcs are removed from N i .
5. 
Every circuit of N i contains place p i 0 .
6. 
Any two N i s are composed when they are composables. Every shared place must be a resource.
More precise definitions of S 3 PRs utilizing concurrently S 2 PRs (Simple Sequential Processes with Resources) can be found in [17,75].
For each SMS in N (i.e., in the PN model of a plant), a monitor has to be added [17] in order to prevent it from emptying. By adding a sufficient amount of monitors (frequently called control places), the liveness of N is enforced in order to prevent siphons from emptying.
Definition 3 
([17]). A siphon S is said to be controlled in a net system ( N , M 0 ) if and only if M R ( N , M 0 ) , M ( S ) > 0 .
In a deadlock structure, the set of transitions plays an important role. In accordance with [17], the set of resources used in output places of the transition set is equal to the set of resources used in the input places of the transition set. In such a situation, the system enters a deadlock state just at that moment if the number of resources that the deadlock structure uses is equal to the resource capacity. Therefore, the control policy consists of adding places, called monitors, that ensure that for each resource involved, the deadlock structure always requires fewer resources than the system actually has. Moreover, in such a case, the policy is minimally restrictive; that is, it is [17,47,76,77] optimal or maximally permissive.
Concisely said, the necessity of a supervisor arises from the fact that for each SMS in N, a monitor must be added to prevent it from emptying.
SMSs in Petri nets are either elementary or dependent. Dependent siphons are further divided into strongly and weakly dependent with respect to elementary siphons. It was proved [17] that the number of the elementary siphons is n E S < m i n { | P | , | T | } ; i.e., it is bounded by the smaller from the counts of places and transitions. In addition, a dependent siphon can be controlled by properly supervising the number of tokens in its elementary siphons.
In the literature, e.g., [78], two concepts are distinguished—bad state and dangerous state. In a bad marking, N will inevitably reach a deadlock. In a dangerous marking, the system may not reach a deadlock if the firings of enabled transitions are properly controlled by the supervisor. The policy of deadlock avoidance consists of ensuring that the system never reaches a bad state.
Monitors can only be added for elementary siphons. The controllability of a dependent siphon is ensured by properly supervising the initial number of tokens in the monitors. This means that it no longer needs to explicitly add a monitor for a dependent siphon.

3.1.1. Controllability of Elementary Siphons

Definition 4 
([17]). Let S P be a subset of places of Petri net N = ( P , T , F , W ) . P-vector S is called the characteristic P-vector of S if and only if p S , λ S ( p ) = 1 ; otherwise, λ S ( p ) = 0 .
Definition 5 
([17]). η S = [ N ] T λ S is called the characteristic T-vector of S, where [ N ] T is the transpose of incidence matrix [ N ] .
Definition 6 
([17]). Let N = ( P , T , F , W ) be a net with | P | = m , | T | = n and Π = { S 1 , S 2 , , S k } be a set of siphons of N ( m , n , k N + ) . Let λ S i ( η S i ) be the characteristic P ( T ) -vector of siphon S i , i N k . [ λ ] k × m = [ λ S 1 | λ S 2 | | λ S k ] T and [ η ] k × n = [ λ ] k × m ] × [ N ] m × n = [ η S 1 | η S 2 | | η S k ] T are called the characteristic P- and T-vector matrices of the siphons in N, respectively.
Definition 7 
([17]). Let η S α , η S β , , η S γ ( { α , β , , γ } N k ) be a linearly independent maximal set of matrix [ η ] . Then, Π E = { S α , S β , S γ } is called a set of elementary siphons in N.
Definition 8 
([17]). S Π E is called a strongly dependent siphon if η S = S i Π E a i η S i , where a i 0 .
Definition 9 
([17]). S Π E is called a weakly dependent siphon if A , B Π E , such that A , B , A B = , and η S = S i A a i η S i S i B a i η S i , where a i > 0 .
Lemma 1 
([17]). The number of elements in any set of elementary siphons in net N equals the rank of [ η ] .
Theorem 1 
([17]). | Π E | m i n { | P | , | T | } .
With respect to [75], a siphon S is a set of places where tokens can leak out into another set of places called complementary set [ S ] of the siphon. It means that tokens stay either in S or [ S ] . Thus, S and [ S ] together form the support of a P-invariant. So, the total number of tokens in S and [ S ] is conservative.
Once a siphon capable of being emptied (i.e., emptiable siphon) is found, the output transitions of places included in it can never be fired. This implies that the net N is not live and includes deadlocks. To prevent a siphon S from emptying, a control place (monitor) V S and some control arcs are added so that [ S ] together with V S form a part of the support of a new P-invariant. It means that with the help of controlling the initial number of tokens M 0 ( V S ) in V S , we can restrict the maximal number of tokens leaking from S into [ S ] . Thus, it can be said that S is invariant-controlled.
Property 1 
([75]). For a given SMS S in an S 3 PR N, S [ S ] is the support of a P-invariant of N.
Property 2 
([17,75]). Let S 0 be a strict redundant (the newer term is strongly dependent in the sense of [79]) SMS with respect to elementary siphons S 1 , S 2 , , S n , in an S 3 PR. We have [ S 0 ] = [ S 1 ] [ S 2 ] [ S n ] .
Lemma 2 
([75]). Let ( N , M 0 ) be an ordinary Petri net (PN) system, and let S be an SMS. Monitor V S with M 0 ( V S ) = M 0 ( S ) 1 added to S such that V S and H ( V S ) form the support of a new minimal P-invariant I S associated with S, where p | | I S | | , I S ( p ) = 1 ; p P | | I S | | , I S ( p ) = 0 , and M R ( N , M 0 ) .
1. 
M ( [ S ] ) + M ( S ) = M 0 ( S ) .
2. 
M ( [ V S ] ) + M ( V S ) = M 0 ( V S ) .
3. 
If S is never empty, then M ( [ S ] ) M 0 ( S ) 1 .
4. 
M ( [ V S ] ) M 0 ( V S ) .
Hence, V S plus its holder set H ( V S ) of places form the support V S H ( V S ) of a new P-invariant.
Lemma 3 
([75]). Let S be an SMS in a marked S 3 PR ( N , M 0 ) . Monitor V S with M ( V S ) = M 0 ( S ) 1 added to S such that V S and H ( V S ) form the support of a new P-invariant. If siphon S is never empty, then [ S ] [ V S ] .
Definition 10 
([15]). Let N = i = 1 k N i = ( P P 0 P R , T , F ) be an S 3 PR and S be a strict minimal siphon in N, where S = S P S R , S R = S P R , and S P = S S R . Let [ S ] = r S R H ( r ) S . [ S ] is called the complementary set of siphon S.
In some studies, P is denoted as P A .
It was proved in [16] that for a siphon S in an S 3 PR which does not contain the support of a P-invariant, | S S R | > 1 , also we have S = S R S P . Moreover, we have the following:
  • i { 1 , 2 , , k } , r P R , P i P i 0 and H ( r ) r are the supports of P-invariants of the S 3 PR;
  • Let S = S P S R be a strict minimal siphon in N, where S R = { r 1 , r 2 , , r n } . Then, p [ S ] , i { 1 , 2 , , n } , p H ( t i ) and j { 1 , 2 , , n } i , p H ( r j ) ;
  • Given a strict minimal siphon S in N, [ S ] S is the support of a P-invariant of N.
Definition 11 
([80]). Let S P be a siphon of N, λ [ S i ] is called the complementary vector of S if p [ S ] , λ [ S ] ( p ) = 1 ; otherwise, λ [ S ] ( p ) = 0 .

3.1.2. Controllability for Strongly Dependent Siphons

The aim of deadlock prevention is to disturb the controller region the least [81]. Therefore, M ( [ S 1 ] ) should be allowed to reach its maximum. Thus, setting M 0 ( V S 1 ) = M 0 ( S 1 ) 1 , S is said to be limit controlled. In general, M 0 ( V S 1 ) = M 0 ( S 1 ) ξ S 1 , where ξ S 1 1 , is the control depth variable. If some dependent siphons are not controlled, ξ S 1 is adjusted to be greater than 1. As a consequence, max M ( [ S 1 ] ) is less than M 0 ( S 1 ) 1 and the controller region is more disturbed. Due to this, the controller is losing more reachable states.
Definition 12 
([81]). Let M 0 ( V S ) = M 0 ( S ) ξ S where ξ S 1 is called the control depth variable. S is said to reach its limit state when M ( S ) = 1 ; it is limit-controlled if and only if it is able to reach its limit state but not able to reach unmarked state; i.e., ξ S = 1 or m i n M ( S ) = 1 .
Theorem 2 
([81]). Let ( N 0 , M 0 ) be a net system and S 0 be a strongly dependent SMS with respect to elementary siphons S 1 , S 2 , , S n such that where η 0 = i = 1 n ( η i ) , and i { 1 , 2 , , n } , S i S j if and only if | i j | = 1 . N 0 is extended by n control places V S 1 , V S 2 , , V S n such that S 1 , S 2 , , S n are limit-controlled. S 0 can never be emptied if and only if b i = M 0 ( S i S i + 1 ) = 1 , i { 1 , 2 , , n 1 } .
It means that for strongly dependent siphon S 0 , S i S i + 1 is a single resource r. M 0 ( S i S i + 1 ) = 1 means that in the initial marking of r, there is only one token.
Definition 13 
([82]). Let r P R be a reliable resource place in an S 3 PR N. The operation places that use r are known as the set of holders of r, which are indicated by H ( r ) = { p p P A , p r P A } . [ S ] is said to be the complementary set of S if [ S ] = ( r S R H ( r ) ) S A .

3.1.3. Controllability for Weakly Dependent Siphons

Theorem 3 
([17]). A weakly dependent siphon S is controlled if M 0 ( S ) > i = 1 n a i ( M 0 ( S i ) M m i n ( S i ) ) j = n + 1 m a j M 0 ( S j ) M m a x ( S j ) ) where M m i n ( S ) = m i n { M ( S ) | M R ( N , M 0 ) } and M m a x ( S ) = m a x { M ( S ) | M R ( N , M 0 ) } .
With respect to [51], a weakly dependent siphon S is max-controlled if M 0 ( S ) > i = 1 n a i ( M 0 ( S i ) M m i n ( S i ) j = n + 1 m a i ( M 0 ( S j ) M m a x ( S j ) ) + ω ( S ) , where ω ( S ) = p S ( m a x p 1 ) .
Corollary 1 
([17]). A weakly dependent siphon S is controlled if M 0 ( S ) > i = 1 n a i M 0 ( S i ) D 1 j = n + 1 m a j M 0 ( S j ) + D 2 where D 1 = m i n { i = 1 n a i M ( S i ) | M = M 0 + [ N ] Y , M 0 , Y 0 } and
D 2 = m a x { j = n + 1 m a j M ( S j ) | M = M 0 + [ N ] Y , M 0 , Y 0 }

3.2. Controllability of Siphons in GPN Models of AMSs

Definition 14 
([14]). A siphon is said to be maximally (respectively, minimally) controlled if it is max-marked (respectively, min-marked) at any reachable marking.
When at least one place p in a siphon S contains enough tokens to fire any transition t p , S is called the max-marked siphon.
When at least one of places p of a siphon S contains enough tokens to fire at least one transition t p , S is called the min-marked siphon.
If a siphon is max-controlled, it is also min-controlled but not vice versa.
The following three formulations ensure the max cs-property of N.
Definition 15 
([39,83]). A net ( N , M 0 ) is said to be satisfying the max cs-property (controlled-siphon property) if and only if each minimal siphon of N is max-controlled.
Lemma 4 
([39,83]). If a net ( N , M 0 ) satisfies the max cs-property, it is deadlock-free.
Theorem 4 
([36]). Let ( N , M 0 ) be a marked S 4 R net. N is live under M 0 if and only if it satisfies the max cs-property.
Consequently, invariant-controlled siphons represent a special case of max-controlled siphons.
Proposition 1 
([83]). Let ( N , M 0 ) be a Petri net and S be a siphon of N. If there exists a P-invariant I such that p ( | | I | | S ) , m a x p = 1 , | | I | | + S , and I T M 0 > p S I ( p ) ( m a x p 1 ) , then S is max-controlled.
This concept of cs-property was utilized in [34] to solve a problem of deadlock prevention in the case of ES 3 PR models of AMSs. Here, it will be used for S 4 PR models.

4. Examples of PN Models with a Simpler Structure

In this section, applications of the above introduced theory are introduced in the form of examples. In each of them, our partial contribution is submitted.
Here, the term simpler structure means a PN structure with a smaller number of places and transitions (the sharp boundary between smaller and larger numbers is not determined) and less complex structure of interconnections between places and transitions (however, there is no sharp definition here, either). Another factor is how the PN model behaves in different calculations. Therefore, this term is only intuitive.
Let us solve the following example utilizing Definitions 4–6 introduced in Section 3.1.1 as well as further definitions, properties, theorems and lemmas in Section 3.1.1 and Section 3.1.2.

4.1. Example 1

Consider the example of the PN model of an AMS displayed in Figure 1. The S 3 PR model of AMS (on the left) and its reachability tree (RT) are on the right. As we can see in RT, there are two discontinuities, namely, RT nodes 13 and 14 have no output arcs. It means that the PN states represented by them are deadlocks. Strict minimal siphons and traps are introduced in Table 1.
In this paper, the siphons and traps were computed by the Matlab-based tool GPenSIM, which is elaborated upon and supported in [84].
The CPU runtime and memory statistics of the computing siphons in examples of smaller PN models in general were not unfavorable on a PC with an Intel(R)Core(TM)i7-10700 CPU@2.96 GHz, 16 GB RAM with Windows 11. When using larger PN models in critical cases, the Lenovo Think System SD630 v2 + SR670 v2, CPU cores 221184CUDA + 13824 Tensor, 38 TB with CentOS 7.x was used. The measurement of such statistics is not the aim of this paper.
We can eliminate the siphons denoted by * because they are equal to the corresponding traps. They cannot be emptied because while siphons tend to lose tokens, traps tend to gather tokens. There are three SMSs in the N: S 5 = { p 4 , p 7 , p 10 , p 11 } , S 6 = { p 3 , p 8 , p 9 , p 10 } and S 8 = { p 4 , p 8 , p 9 , p 10 , p 11 } . Let us rename them to S 1 , S 2 , and S 3 , respectively, to simplify their manipulation.
Hence,
[ λ ] = 0 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 1 1 1 1 .
The product [ λ ] . [ N ] gives us
[ γ ] = 0 1 1 0 1 1 0 0 1 1 0 0 0 1 1 0 1 0 1 0 1 0 1 0 .
Here,
[ N ] = 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1 0 0 .
Invariants of the N are as follows:
[ I ] = 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 .
In this N, there is a set of elementary siphons Π E = { S 1 , S 2 } and S 3 is a strongly dependent siphon, because η S 3 = η S 1 + η S 2 .
Let us assign a specific task as follows. We necessarily need to prevent deadlocks and synthesize a supervisor able to control the PN model in the given marking of resource places p 9 p 11 , i.e., make all of them equal to 1.

Nonstandard Synthesis of a Monitor to Control the Strongly Dependent Siphon S 3

At a standard synthesis of a monitor ensuring the controllability of the strongly dependent siphon S 3 , we should obtain the controlled S 3 as the consequence of the controlled siphons S 1 and S 2 with respect to Section 3.1.2.
The matrix [ λ ] is given in (2), the incidence matrix [ N ] in (4), and [ γ ] in (3). From [ γ ] follows the supervisor structure consisting of monitors V S 1 and V S 2 corresponding, respectively, to elementary siphons S 1 and S 2 , which is pictured in a simplified way on the right side of Figure 2. However, the corresponding RT on the left side of Figure 3 shows us that there remains still one deadlock in the original system controlled by such a supervisor. Because the theory described in Section 3.1.2 disallows adding a monitor to the strongly dependent siphon in a similar way to that used in elementary siphons, we have to find another way to deal with the controllability of the siphon S 3 .
Here, it is necessary to say that the monitor V S 3 does not follow from the third row of [ γ ] , because monitors were assigned only to elementary siphons.
Firing transition t 2 decreases the number of tokens in S 1 , and firing t 5 decreases the number of tokens in S 1 and S 3 . Firing t 1 decreases the number of tokens in S 2 and S 3 . Firing t 6 decreases the number of tokens in S 2 , and firing t 5 decreases the number of tokens in S 3 . Details are given in Table 2.
These facts determine the following procedure and its considerations. Because S 1 and S 2 are controlled by monitors V S 1 and V S 2 , respectively, in order to control S 3 , we have to add a token to t 1 and t 5 (because S 3 must not be emptied) and take a token from t 2 and t 6 (because S 1 , S 2 are controlled). From such a simple consideration, we can construct the monitor V S 3 —see the upper right side of Figure 2. At an initial marking M 0 , M 0 ( S 3 ) = p 4 + p 8 + p 9 + p 10 + p 11 = 0 + 0 + 1 + 1 + 1 = 3 , M 0 ( S 1 ) = p 4 + p 7 + p 10 + p 11 = 0 + 0 + 1 + 1 = 2 and M 0 ( S 2 ) = p 3 + p 8 + p 9 + p 10 = 0 + 0 + 1 + 1 = 2 .
In general, let the marking of S 3 m 3 > m 1 1 + m 2 1 , where m 1 , m 2 are markings of S 1 , S 2 , respectively, hold. Evidently, the strongly dependent siphon S 3 can never become unmarked. That is to say, this siphon will always be marked provided that S 1 and S 2 are always guaranteed to be marked.
This procedure is a partial contribution to the deadlock prevention. The functionality of V S 3 after its adding to V S 1 and V S 2 is documented by means of the RT of the supervised system given in Figure 2.
With respect to the approach in [46], this supervisor can be said to be optimal, i.e., maximally permissive.

4.2. Another Approach Using a Complementary Set of SMSs

We can also solve the problem that occurred in Example 1 in Section 4.1 by applying complementary set [ S ] of the siphon S. The complementary set [ S ] of an SMS S is the set of operation places which on the one hand are the holders of the resources in S, but on the other hand, they do not belong to S. [ S ] S is the support of a P-invariant. It means that the operation places in [ S ] will compete for the resources in S with the operation places belonging to S. Consequently, when all tokens marked in S flow into [ S ] , S will be emptied. In particular, in S 3 PR [15], the union of the complementary sets of its elementary siphons is the complementary set of a strongly dependent SMS.
If a siphon S | | I | | , then [ S ] = | | I | | S is called the complementary siphon of S and S [ S ] = r S ρ r is the support of a P-invariant. Here, ρ r is the minimal siphon containing r. The sum of tokens in S [ S ] is a constant. Thus, S [ S ] forms the support of a minimal P-invariant.
Lemma 5 
([85]). Let r P R , while the minimal siphon containing r is S = ρ ( r ) = r H ( r ) (also the support of a minimal P-invariant) with [ S ] = , and η S = 0 .
Corollary 2 
([15]). Let  ( N 0 , M 0 ) be a marked S 3 PR, S be an SMS of N 0 , and [ S ] be its complementary set of S. Suppose a control place V S is added by Proposition 2 [15] such that S is invariant controlled and denote the new net by N 1 . Then, [ S ] { V S } is the support of the P-invariant of N 1 .
Proposition 2 
([15]). Let S = { p i , p j , , p k } be an SMS of a net system ( N 0 , M 0 ) , where N 0 = ( P 0 , T 0 , F 0 ) . Add a control place V S to N 0 to make P-vector I = ( 0 , , 1 i , , 1 k , , 0 , 1 ) T be a P-invariant of a new net system ( N 1 , M 1 ) , where p S , I ( p ) = 1 ; p P 0 S , I ( p ) = 0 ; I ( V S ) = 1 ; p P 0 , M 1 ( p ) = M 0 ( p ) ; and [ N 1 ] = [ [ N 0 T | L V S T ] T , where L V S T is a row vector due to the addition of place V S . Let M 1 ( V S ) = M 0 ( S ) ξ S where 1 ξ S < M 0 ( S ) . Then, S is an invariant-controlled SMS and hence always marked at any reachable marking of ( N 1 , M 1 ) .
Therefore, we have η 3 = η 1 + η 2 and, consequently, S 3 is a strongly dependent siphon.
Because for r P R , H ( r ) = r P , we can write [15] [ S 3 ] = ( H ( p 9 ) H ( p 10 ) H ( p 11 ) ) S 3 .
Corollary 3 
([15]). Let S 0 be a strongly dependent SMS with respect to elementary siphons S 1 , S 2 , , S n in an S 3 PR. We have [ S 0 ] = [ S 1 ] [ S 2 ] [ S n ] .
Theorem 5 
([15]). Let ( N 0 , M 0 ) be a marked S 3 PR and S 0 be a strongly dependent SMS with respect to elementary siphons S 1 , S 2 , , S n . By Definition 8, add n control places such that S 1 , S 2 , , S n are controlled with the control depth variables ξ S 1 , ξ S 2 , ξ S n respectively. S 0 can never be emptied if M 0 ( S 0 ) > i = 1 n M 0 ( S i ) i = 1 n ξ S i , where 1 ξ S i M 0 ( S i ) 1 .
Now, the marking of the supervisor monitors has to be determined. With respect to the initial rubric of Section 3.1.2 concerning the limit controlled S, any unmarked state is reached when ξ S = 1 or m i n M ( S ) = 1 .
Theorem 6 
([81,86]). Let ( N 0 , M 0 ) be a net system and S 0 be strongly dependent SMS with respect to elementary siphons S 1 , S 2 , , S n such that where η 0 = i = 1 n ( η i ) , and i 1 , 2 , , n , S i S j if and only if | i j | = 1 . N 0 is extended by n control places V S 1 , V S 2 , , V S n so that S 1 , S 2 , , S n are limit-controlled. S 0 can never be emptied if and only if b i = M 0 ( S i S i + 1 ) = 1 , i { 1 , 2 , , n 1 } .
Note that for strongly dependent siphon S 0 , S i S i + 1 is a single resource r, while M 0 ( S i S i + 1 ) = 1 implies that there is only one token in the initial marking of r.
A siphon S is a set of places where tokens can leak out into another set of places called the complementary set [ S ] of the siphon.
In [87], a more precise definition is introduced: The complementary set of S, denoted by [ S ] , is a set of operation places that are not in S but their execution needs the resources contained in SMS. T r c = r [ S ] denotes the set of critical transitions of r, where r S R . T S c = S R [ S ] denotes the set of critical transitions of S.
The term self-max-controlled siphons also exists.
Definition 16 
([88]). Given a well-marked GS 3 PR ( N , M 0 ) , a siphon S in N is self-max-controlled if there is a marked trap in it or r S such that m i n ( M 0 % W r ) m a x t ( r [ S ] ) W ( r , t ) , where ’%’ is modulus operator.
In our case, N in Figure 1 and Figure 5 is [ S 2 ] = { p 2 , p 7 } , [ S 2 ] = { t 2 , t 7 } and r 1 [ S 2 ] = { t 7 } , r 2 [ S 2 ] = { t 2 } . S 2 is max-marked at M 0 since M 0 ( r 1 ) = 2 m a x t { r [ S ] } W ( r 1 , t ) = W ( r 1 , t 7 ) = 2
Definition 17 
([89]). Let S be a strict minimal siphon in a well-marked GS 3 PR net ( N , M 0 ) . S is said to be max * -marked ( non-max * -marked) at M R ( N , M 0 ) if at least one (none) of the following conditions hold:
  • p S A , M ( p ) 1 ;
  • r S R , M ( r ) m a x t T r c W ( r , t ) ;
  • t T S c , c p t = 1 and c r t = 1 (t is enabled at M).
Here, c p t is a binary variable indicating whether the arc is enabled (enabled means: M ( p ) W ( p , t ) c p t = 1 ; disabled means: M ( p ) < W ( p , t ) c p t = 0 ).
Definition 18 
([89]). Let S be a strict minimal siphon in a well-marked GS 3 PR net ( N , M 0 ). S is said to be max * -controlled if S is max * -marked at any reachable marking from M 0 .
Theorem 7 
([89]). Let ( N , M 0 ) be a well-marked GS 3 PR net and Π be the set of SMSs. It is live if and only if S Π , S is max * -controlled.
Applying this theoretical background to the AMS model from Example 1, we can elaborate the following Example 2.

Example 2

Consider the AMS model displayed on the left side of Figure 2. There are P 0 = { p 1 , p 5 } , P R = { p 9 , p 10 , p 11 } , P A = { p 2 , p 3 , p 4 , p 6 , p 7 , p 8 } .
Hence, we have siphons S 1 = { p 4 , p 7 , r 2 , r 3 } , S 2 = { p 3 , p 8 , r 1 , r 2 } , S 3 = { p 4 , p 8 , r 1 , r 2 , r 3 } , where r 1 = p 9 , r 2 = p 10 , r 3 = p 11 .
In agreement with Definitions 13 and 30, their complementary sets are [ S 1 ] = { p 3 , p 6 } , [ S 2 ] = { p 2 , p 7 } , [ S 3 ] = { p 2 , p 3 , p 6 , p 7 } , respectively.
As it was mentioned above, a minimal siphon S is said to be strict if S S . Let Π = { S 1 , S 2 , , S k } be a set of SMS of N. Let us have S = S A S R , S R = S P R , and S A = S S R . Here, S A denotes the operation places of operations and S R denotes resource places.
Definition 19 
([82]). Let r P R be a reliable resource place in an S 3 PR N. The operation places using resources r are known as the set of holders of r, which is indicated by H ( r ) = { p p P A , p r P A } . [ S ] is said to be the complementary set of S if [ S ] = ( r S R H ( r ) ) S A .
Definition 20 
([17]). Let ( N a , M a ) and ( N b , M b ) be marked Petri nets; N i = ( P i , T i , F i , W i ) , where i = a , b . We call ( N , M ) with N = ( P , T , F , W ) a synchronous net resulting from the integration of ( N a , M a ) and ( N b , M b ) and denote it as ( N a , M a ) ( N b , M b ) when the following conditions are satisfied: (1) P = P a P b , and P a P b = ; (2) T = T a T b ; (3) F = F a F b ; (4) W ( e ) = W i ( e ) , where e F i , i = a , b ; (5) M ( p ) = M i ( p ) , where p P i , i = a , b .
Definition 21 
([82]). Let ( N , M 0 ) be an S 3 PR with N = ( P A p 0 P R , T , F , M 0 ) . The deadlock controller for ( N , M 0 ) developed by Ezpeleta et al. (see [37]) is denoted as ( V , M V 0 ) = ( P V , T V , F V , M V 0 ) , where (1) P V = { V S S Π } is a set of control places; (2) T V = { t t V S V S } ; (3) F V ( P V × T V ) ( T V × P V ) is the set of directed arcs that join the control places with transitions (and vice versa); (4) For all V S P V , M V 0 ( V S ) = M V 0 ( S ) 1 , where M V 0 ( V S ) is called an initial marking of a control place V S .
[ S ] S is the support of a P-invariant. It means that the operation places included in [S] will compete for the resources in S with the operation places belonging to S. Then, S will be without tokens (i.e., unmarked) when all tokens in S flow into [ S ] . This fact can be used in the following control policy.
Concisely said, let S be a strict minimal siphon which does not contain the support of any place semiflow (i.e., a siphon that can be emptied). Then, we have S = S A S R , S R = S P R , S A = S S R . [ S ] = ( r S R H ( r ) ) S A , where H ( r ) = ( | | I r | | + r ) , | | I r | | + = { p | I ( p ) > 0 } indicates the positive support of the place invariant I , i , j { 1 , 2 , , n } , i j , H ( r i ) H ( r j ) = . For the siphon S, [ S ] is the set of holders, corresponding to resources in S that do not belong to S. For that reason, [ S ] is said to be the complementary set for S. Due to this fact, a monitor (control place) V S is added for [ S ] and the initial marking is M 0 ( V S ) = M 0 ( S ) 1 .
Hence,
S 1 : S A = { p 4 , p 7 } , S R = { p 10 , p 11 } , H ( p 10 ) = { p 3 , p 7 } , H ( p 11 ) = { p 4 , p 6 } , [ S 1 ] = { p 3 , p 6 } , V S 1 = { t 3 , t 6 } , V S 1 = { t 2 , t 5 } , M V 0 ( V S 1 ) = 1
S 2 : S A = { p 3 , p 8 } , S R = { p 10 , p 11 } , H ( p 10 ) = { p 3 , p 7 } , H ( p 11 ) = { p 4 , p 6 } , [ S 2 ] = { p 2 , p 7 } , V S 2 = { t 2 , t 7 } , V S 2 = { t 1 , t 5 } , M V 0 ( V S 2 ) = 1 .
S 3 : S A = { p 4 , p 8 } , S R = { p 9 , p 10 , p 11 } , H ( p 9 ) = { p 2 , p 8 } , H ( p 10 ) = { p 3 , p 7 } , H ( p 11 ) = { p 4 , p 6 } , [ S 3 ] = { p 2 , p 3 , p 6 , p 7 } , V S 3 = { t 3 , t 7 } , V S 3 = { t 1 , t 5 } , M V 0 ( V S 3 ) = 2 .
It can be seen on the right side of Figure 4 that no deadlock exists there in the RT; however, the RT does not have as many nodes (PN model states) as that in Example 1. This finding is another part of our contribution (result) to the topic of deadlock prevention.
The next matrix (6) presents the supervisor incidence matrix, while the incidence matrix of the controlled system is shown in (7).
[ N S ] = 1 0 1 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 .
[ N C ] = N N S = 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1 0 0 1 0 1 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 .
Summary: Upon comparing the results obtained in Example 1 and Example 2, respectively, we can see that the approach to deadlock prevention in Example 1 is more effective and more favorable regarding the size of the state space of the controlled system (i.e., less restricting and makes the behavior of the controlled system more free—its RT yields 14 states vs. 10).

4.3. Simpler AMS with GPN Models

The procedure used for the solution of such problems consists of the application of the following knowledge.
Definition 22 
([17]). A siphon S in an ordinary PN ( N , M 0 ) is invariant controlled by P-invariant I under the initial marking M 0 if and only if I T . M 0 > 0 and p P S , I ( p ) 0 , or equivalently, I T . M 0 > 0 and | | I | | + S . Here, | | I | | + = p P | I ( p ) > 0 is the positive support of I.
Lemma 6 
([39,83]). Let ( N , M 0 ) be a marked net and S be a siphon of N. S is max-controlled if there exists a P-invariant I such that p ( | | I | | S ) , m a x p = 1 , | | I | | + S , and p P I ( p ) M 0 ( p ) > p S I ( p ) ( m a x p 1 ) .
In a S 4 R N, r is a resource place, S is an SMS, and H ( r ) = I r r . Let T h ( S ) = r S R H ( r ) S . It can be seen that | T h ( S ) | P S is true. Let us use p | T h ( S ) | h S ( p ) p to denote T h ( S ) . h S ( p ) says that siphon S loses just h S ( p ) tokens when the number of tokens in p increases by one.
Definition 23 
([39,83]). Let the net ( N , M 0 ) be a marked net and S be a siphon of N. S is said to be max-controlled if and only if S is max-marked at any reachable marking.
Theorem 8 
([25,90]). Let ( N , M 0 ) , N = ( P , T , F , W ) be a marked net and S be a strongly dependent siphon with η S = i = 1 n a i η S i , where S 1 , , S n are elementary siphons of S. S is max-controlled if the following apply:
1. 
i { 1 , 2 , , n } , I i is a P-invariant of N, | | I i | | + = S i , and p S i , I i ( p ) = 1 ;
2. 
M 0 ( S ) > i = 1 n p | | I i | | ( a i | I i ( p ) | M 0 ( p ) ) + p S ( m a x p 1 ) .
Corollary 4 
([90]). Let ( N μ 0 , M μ 0 ) be an ES 3 PR net system and S be a strongly dependent siphon with η S = i = 1 n a i η S i where S 1 S n are the elementary siphons of S. S is max-controlled if the following apply:
1. 
( N μ 0 , M μ 0 ) is extended by adding n monitors V S 1 V S n such that S 1 S n are max-controlled, respectively;
2. 
i = 1 n a i ξ S i > i = 1 n a i M μ 0 ( S i ) + p S ( m a x p 1 ) M μ 0 ( S ) , where
p S i h S i ( p ) ( m a x p 1 ) < ξ S i < M μ 0 ( S i ) .
Corollary 5 
([90]). Let ( N μ 0 , M μ 0 ) be an initially well-marked ES 3 PR net system and S be a weakly dependent siphon with η S = i = 1 n a i η S i i = n + 1 n + m a i η S i , where S 1 S n + m are the elementary siphons of S. S is max-controlled if the following apply:
1. 
( N μ 0 , M μ 0 ) is extended by adding n monitors V S 1 V S n such that S 1 S n are max-controlled, respectively, due to Proposition 3 (below);
2. 
i = 1 n a i ξ S i > i = 1 n a i M μ 0 ( S i ) + p S ( m a x p 1 ) M μ 0 ( S ) , where p S h S i ( p ) ( m a x p 1 ) < ξ i < M μ 0 ( S i )
Proposition 3 
([90]). Let S be a strict minimal siphon in a marked ES 3 PR net ( N μ 0 , M μ 0 ) , where N μ 0 = ( P 0 P S P R , T , F , W ) . Construct k S for S due to Definition 35 (introduced below in Section 4). A monitor V S is added to ( N μ 0 , M μ 0 ) by the enforcement that g S = k S + V S is a P-invariant of the resultant net system ( N μ 1 , M μ 1 ) , where N μ 1 = ( P 0 P S P R { V S } ; T ; F μ 1 ; W μ 1 ) ; p P 0 P S P R , M μ 1 ( p ) = M μ 0 ( p ) . Let h S = r S R I r g S and M μ 1 ( V S ) = M μ 0 ( S ) ξ S ( ξ S N . Then, S is max-controlled if ξ S > p S h S ( p ) ( m a x p 1 ) .

Example 3

Let us use the same basic structure of the AMS model as that in the left side of Figure 1 but with four duple directed arcs—see the left side of Figure 5. This is an ES 3 PR (extended S 3 PR) structure. Siphons are the same because they are structural entities. The supervisor computed using complementary sets of siphons is shown on the right side of Figure 5.
The following procedure was used to perform the deadlock prevention. The incidence matrix of this GPN is shown below:
[ N ] = 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 2 2 0 1 1 0 0 1 1 0 0 0 2 2 1 1 0 0 .
Because of elements greater than 1 in the matrix (8), the marking of resources must be increased, too. Siphons are structural parameters, and they do not depend on the weights of arcs. There are three sets of places in Figure 5: namely, P S = { p 11 , p 12 , p 13 , p 21 , p 22 , p 23 } is a set of operation places, P R = { r 1 , r 2 , r 3 } { p 9 , p 10 , p 11 } is a set of resource places, and P 0 = { p 1 , p 2 } is a set of idle places. Siphons create rows of the matrix (9):
[ λ ] = 0 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 1 1 1 1 .
Realizing the matrix multiplication [ γ ] = [ λ ] . [ N ] , we obtain the matrix (10) expressing the supervisor structure.
[ γ ] = 0 1 0 1 1 1 0 0 1 1 0 0 0 1 0 1 1 0 0 1 1 0 0 1 .
Here, we can easily see that the third row of the matrix [ γ ] is the sum of the previous two rows, i.e., γ S 3 = γ S 1 + γ S 2 . This implies two elementary siphons S 1 and S 2 and the strongly dependent siphon S 3 .
N has five P-invariants: { p 1 , p 2 , p 3 , p 4 } ; { 2 p 4 , p 6 , p 11 } ; { p 3 , p 7 , p 10 } ; { p 2 , 2 p 8 , p 9 } ; { p 5 , p 6 , p 7 , p 8 } or in the matrix form (11):
[ I ] = 1 1 1 1 0 0 0 0 0 0 0 0 0 0 2 0 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 2 1 0 0 0 0 0 0 1 1 1 1 0 0 0 .
As we can see, only three of them have something to do with resources (see rows 2, 3 and 4 of the matrix (11)).
Let us rewrite siphons into the multiset form. Thus,
S 1 = p 4 + p 7 + p 10 + p 11 ;
S 2 = p 3 + p 8 + p 9 + p 10 ;
S 3 = p 4 + p 8 + p 9 + p 10 + p 11 .
Similarly, there are P-invariants, where the framed elements are concerning the following resources:
I 1 = p 1 + p 2 + p 3 + p 4 ;
I 2 = 2 p 4 + p 6 + p 11 ;
I 3 = p 3 + p 7 + p 10 ;
I 4 = p 2 + 2 p 8 + p 9 ;
I 5 = p 5 + p 6 + p 7 + p 8 .
Let r be a resource place, S be an SMS and H ( r ) = I r r in an S 4 R net. Let us define T h ( S ) = r S R H ( r ) S . We can see that | T h ( S ) | P S is correct. Use p | T h ( S ) | h S ( p ) p to denote T h ( S ) . h S ( p ) shows the fact that when the number of tokens in the place p increases by one, the number of tokens in the siphon S decreases by h S ( p ) .
Here, H ( p 9 ) = I p 9 = I 4 p 9 = p 2 + 2 p 8 ; H ( p 10 ) = I p 10 = I 3 p 10 = p 3 + p 7 ; H ( p 11 ) = I p 11 = I 2 p 11 = 2 p 4 + p 6 .
T h ( S 1 ) = { H ( p 10 ) + H ( p 11 ) } S 1 = p 3 + p 7 + 2 p 4 + p 6 p 4 p 7 = p 3 + p 4 + p 6 = [ S 1 ] .
T h ( S 2 ) = { H ( p 9 ) + H ( p 10 ) } S 2 = p 2 + 2 p 8 + p 3 + p 7 p 3 p 8 = p 2 + p 8 + p 7 = [ S 2 ] .
T h ( S 3 ) = { H ( p 9 ) + H ( p 10 ) + H ( p 11 ) } S 3 = p 2 + 2 p 8 + p 3 + p 7 + 2 p 4 + p 6 p 4 p 8 = p 2 + p 8 + p 3 + p 7 + p 4 + p 6 = [ S 3 ] .
Because η S 3 = η S 1 + η S 2 , S 1 and S 2 are elementary siphons and S 3 is the siphon that is strongly dependent on them. The controllability of S 3 can be verified by using Theorem 9 and its Corollaries 4 and 5. h 1 and h 2 are P-invariants satisfying Theorem 9 (condition (1)).
Seeing that siphons, as structural entities, do not depend on the weights of directed arcs, we have the same siphons as in N displayed in Figure 1  S 1 = { p 4 , p 7 , p 10 , p 11 } , S 2 = { p 3 , p 8 , p 9 , p 10 } and S 3 = { p 4 , p 8 , p 9 , p 10 , p 11 } . Thus,
g 1 = p 2 + p 3 + p 6 + V S 1
I p 10 = p 3 + p 7 + p 10
I p 11 = 2 p 4 + p 6 + p 11
I 1 = I p 10 + I p 11 = p 3 + 2 p 4 + p 6 + p 7 + p 10 + p 11
h 1 = I 1 g 1 = p 3 + 2 p 4 + p 6 + p 7 + p 10 + p 11 ( p 2 + p 3 + p 6 + V S 1 ) = = 2 p 4 + p 7 + p 10 + p 11 p 2 V S 1
| | h 1 | | S 1 = { p 2 , V S 1 } { p 4 , p 7 , p 10 , p 11 } =
| | h 1 | | + = S 1
p P h 1 ( p ) M μ 1 ( p ) = M μ 1 ( p 10 ) + M μ 1 ( p 11 ) M μ 1 ( V S 1 ) = 2 + 2 2 = 2
Because p P h 1 ( p ) M μ 1 ( p ) > ! p S 1 h 1 ( p ) ( m a x p 1 ) and p S 1 h 1 ( p ) ( m a x p 1 ) = 0 ,
i.e., 2 > 0 , it can be said that S 1 is max-controlled by means of the P-invariant h 1 .
The analogical sequence we may apply for the second SMS S 2 follows:
g 2 = p 2 + p 6 + p 7 + V S 2
I p 9 = p 2 + 2 p 8 + p 9
I p 10 = p 3 + p 7 + p 10
I 2 = I p 9 + I p 10 = p 2 + p 3 + p 7 + 2 p 8 + p 9 + p 10
h 2 = I 2 g 2 = p 2 + p 3 + p 7 + 2 p 8 + p 9 + p 10 ( p 2 + p 6 + p 7 + V S 2 ) = = p 3 + 2 p 8 + p 9 + p 10 p 6 V S 2
| | h 2 | | S 2 = { p 6 , V S 2 } { p 3 , p 8 , p 9 , p 10 } =
| | h 2 | | + = S 2
p P h 2 ( p ) M μ 1 ( p ) = M μ 1 ( p 9 ) + M μ 1 ( p 10 ) M μ 1 ( V S 2 ) = 2 + 2 2 = 2
Because p i n P h 2 ( p ) M μ 1 ( p ) > ! p S 2 h 1 ( p ) ( m a x p 1 ) and p S 2 h 1 ( p ) ( m a x p 1 ) = 0 ,
i.e., 2 > 0 , it can be said that S 2 is max-controlled by means of the P-invariant h 2 .
Thus, the controllability of the elementary siphons S 1 , S 2 was verified. Now, we will verify the controllability of the strongly dependent siphon S 3 . h 1 , h 2 are P-invariants satisfying condition (1) of Theorem 9. Now, condition (2) of Theorem 9 will be verified. M 0 ( S 3 ) > ! i = 1 2 p | | h i | | ( a i | h i ( p ) | M μ 1 ( p ) ) + p S 3 ( m a x p 1 ) = M μ 1 ( p 1 ) + M μ 1 ( p 1 ) . While M μ 1 ( S 3 ) = M μ 0 ( S 3 ) = 0 + 0 + M μ 1 ( p 9 ) + M μ 1 ( p 10 ) + M μ 1 ( p 11 ) = 2 + 2 + 2 = 6 ; i = 1 2 p | | h i | | ( a i | h i ( p ) | M μ 1 ( p ) ) + p S 3 ( m a x p 1 ) = M μ 1 ( p 2 ) + M μ 1 ( p 6 ) + M μ 1 ( V S 1 ) + M μ 1 ( V S 2 ) + ( 1 1 ) = 2 + 2 + 0 = 4 .
Because 6 > 4, we can say that S 3 is max-controlled, too.
The setting of monitors corresponds to Corollary 4 [90].
As we can see from the RT in Figure 6, there are 36 nodes (i.e., 36 states of the state space including the initial state). This result cannot be compared with the results of the previous two examples, because due to the multiplicity of arcs in the PN model, the resources (more precisely the markings of resource places) also had to be increased.

4.4. More Complex AMS with OPN Model

Example 4

Consider a more complex system of the structure symbolically expressed in Figure 7. It comprises three robots R1–R3, four machines M1–M4, and three input places I1–I3 as well as three output places O1–O3. In this AMS scheme, robots serve as quasi “conveyors” in order to transfer parts among particular regions of the AMS. The sphere of activity for R1 consists of I1, O1, and M1–M4; the sphere of activity for R2 consists of I2, O3, M1, and M3; and the sphere of activity for R3 consists of I3, O2, M2, and M4. The AMS produces three kinds of products: J1–J3.
R1 is loading raw materials for J1 to M1, where J1 is fabricated, and unloading finished products J1 to O1. The procedure for the fabrication of J2 is more complicated. Raw materials for J2 and finished products J2 are loaded from I2 and unloaded to O2 by R1 and R3, respectively. Meanwhile, two optional routes for the fabrication of J2 are possible: (i) M1 → R1 → M2, which means that J2 is fabricated by M1 and M2 in such sequence; or (ii) M3 → R1 → M4, which means that J2 is fabricated by M3 and M4 in such sequence. Between M1 and M2 or M3 and M4, the conveying operation from the former (i.e., M1 or M2), to the latter (i.e., M3 or M4) is performed by R1. The final product J2 is obtained at the end of either route.
Raw materials for J3 are loaded from I3 and finished products J3 are unloaded to O3 by R3 and R2, respectively. Meanwhile, J3 is produced by M4 and M3 in sequence, where the conveying operation from the former to the latter is performed by R1.
The PN model in Figure 8 has 18 SMS as follows:
S 1 = { p 10 , p 18 , p 22 , p 26 }
S 2 * = { p 4 , p 10 , p 15 , p 20 , p 21 , p 22 , p 23 , p 24 , p 25 , p 26 }
S 3 * = { p 4 , p 10 , p 16 , p 21 , p 22 , p 24 , p 25 , p 26 }
S 4 = { p 4 , p 10 , p 17 , p 21 , p 22 , p 24 , p 26 }
S 5 * = { p 4 , p 9 , p 13 , p 15 , p 20 , p 21 , p 23 , p 24 , p 25 , p 26 }
S 6 * = { p 4 , p 9 , p 13 , p 16 , p 21 , p 24 , p 25 , p 26 }
S 7 * = { p 4 , p 9 , p 13 , p 17 , p 21 , p 24 , p 26 }
S 8 * = { p 4 , p 9 , p 12 , p 15 , p 20 , p 21 , p 23 , p 24 , p 25 }
S 9 * = { p 4 , p 9 , p 12 , p 16 , p 21 , p 24 , p 25 }
S 10 = { p 4 , p 9 , p 12 , p 17 , p 21 , p 24 }
S 11 * = { p 2 , p 4 , p 8 , p 10 , p 15 , p 20 , p 21 , p 22 , p 23 , p 25 , p 26 }
S 12 * = { p 2 , p 4 , p 8 , p 13 , p 15 , p 20 , p 21 , p 23 , p 25 , p 26 }
S 13 * = { p 2 , p 4 , p 8 , p 10 , p 16 , p 21 , p 22 , p 25 , p 26 }
S 14 * = { p 2 , p 4 , p 8 , p 13 , p 16 , p 21 , p 25 , p 26 }
S 15 * = { p 2 , p 4 , p 8 , p 10 , p 17 , p 21 , p 22 , p 26 }
S 16 = { p 2 , p 4 , p 8 , p 13 , p 17 , p 21 , p 26 }
S 17 = { p 2 , p 4 , p 8 , p 12 , p 15 , p 20 , p 21 , p 23 , p 25 }
S 18 = { p 2 , p 4 , p 8 , p 12 , p 16 , p 21 , p 25 }
The PN model of this complex is shown in Figure 8.
This SMS set consists of six elementary siphons ( S 1 , S 4 , S 10 , S 16 , S 17 , S 18 ) and 12 strongly dependent siphons (denoted by *). The relations between dependent siphons and elementary ones follow:
η 2 = η 4 + η 17 , η 3 = η 4 + η 18 , η 5 = η 10 + η 16 + η 17 , η 6 = η 10 + η 16 + η 18 , η 7 = η 10 + η 16 , η 8 = η 10 + η 17 , η 9 = η 10 + η 18 , η 11 = η 1 + η 16 + η 17 , η 12 = η 16 + η 17 , η 13 = η 1 + η 16 + η 18 , η 14 = η 16 + η 18 , and   η 15 = η 1 + η 16 .
Hence, all siphons denoted by * are strongly dependent siphons.
[ N ] = 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 1 1 0 1 1 1 1 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 .
Expressing elementary siphons in the form of the matrix [ λ ] and consequently, after multiplication [ λ ] . [ N ] , we have
[ λ ] = 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 0 1 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 .
[ η ] = 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 1 0 1 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 .
The rank of the matrix [ η ] is 6. The P-invariants are the rows of the following matrix:
[ I ] = 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 .
or they have the following form:
I 1 = p 7 + p 23 I 2 * = p 5 + p 6 + p 7 + p 8 + p 9 + p 10 + p 11 + p 12 + p 13 I 3 = p 3 + p 9 + p 24 I 4 * = p 1 + p 2 + p 3 + p 4 I 5 = p 10 + p 19 + p 22 I 6 = p 13 + p 18 + p 26 I 7 = p 2 + p 4 + p 8 + p 12 + p 17 + p 21 I 8 = p 11 + p 16 + p 25 I 9 = p 6 + p 15 + p 20 I 10 * = p 14 + p 15 + p 16 + p 17 + p 18 + p 19
The invariants denoted by * do not have anything to do with resources.
Monitors V S i , i = 1 , 4 , 10 , 16 , 17 , 18 can be marked by means of the inequality M 0 ( S i ) M 1 ( V S i ) > 0 , where M means the marking in the PN model of the original plant, while M 1 expresses the marking in the extended system (plant + supervisor). Because M 0 ( S 1 ) = M 0 ( p 10 ) + M 0 ( p 18 ) + M 0 ( p 22 ) + M 0 ( p 26 ) = 0 + 0 + 1 + 2 = 3   M 0 ( S 1 ) M 1 ( V S 1 ) > 0 , it is sufficient to put M 1 ( V S 1 ) = 2 . Similarly, because M 0 ( S 4 ) = M 0 ( p 4 ) + M 0 ( p 10 ) + M 0 ( p 17 ) + M 0 ( p 21 ) + M 0 ( p 22 ) + M 0 ( p 24 ) + M 0 ( p 26 ) = 0 + 0 + 0 + 1 + 1 + 2 + 2 = 6 , M 0 ( S 4 ) M 1 ( V S 4 ) = 6 M 1 ( V S 4 ) > 0 and consequently, it is sufficient to put M 1 ( V S 4 ) = 5 , M 0 ( S 10 ) = M 0 ( p 4 ) + M 0 ( p 9 ) + M 0 ( p 12 ) + M 0 ( p 17 ) + M 0 ( p 21 + M 0 ( p 24 ) = 0 + 0 + 0 + 0 + 1 + 2 = 3 , M 1 ( V S 10 ) = 2 . Analogically, M 0 ( S 16 ) = 3 , M 1 ( V S 16 ) = 2 ; M 0 ( S 17 ) = 6 , M 1 ( V S 17 ) = 5 ; M 0 ( S 18 ) = 3 , M 1 ( V S 18 ) = 2 .
With respect to [15,16], adding a control place for each elementary siphon does not result in the creation of a new SMS. Putting ξ S i = 1 for i = 1 , 4 , 10 , 16 , 17 , 18 , we obtain M 1 ( V S 1 ) = 2 , M 1 ( V S 4 ) = 5 , M 1 ( V S 10 ) = 2 , M 1 ( V S 16 ) = 2 , M 1 ( V S 17 ) = 5 , M 1 ( V S 18 ) = 2 . It means that adding a control place for each elementary siphon guarantees that all of the elementary siphons will be in any case marked.
ξ S is called the siphon control depth variable. It can also be greater than 1, i.e., 1 ξ S < M 0 ( S ) . It ensures that the SMS can never be emptied. In the opposite case, a new deadlock originates.
Figure 9 describes the supervisor for the PN model displayed in Figure 8.
As it was shown in [91,92], in general, a deadlock-freeness does not necessarily imply liveness. The main difference between a siphon and a trap is that a siphon with no tokens remains without tokens, while a marked trap remains marked. All transitions associated with an empty siphon are not live. It is also very important that for any marking that does not allow firing any transition, the set of empty places creates a siphon.

5. More Complex GPN Models of AMSs

In this section, the GPN model has the form of an S 4 PR (Simple System of Simple Sequential Processes with Shared Resources).
Definition 24 
([17]). An S 4 R is a generalized connected self-loop-free Petri net N = i = 1 n N i = ( P , T , F , W ) where the following apply:
1. 
N i = ( P A i p i 0 P R i , T i , F i , W i ) , i N n .
2. 
P = P A P 0 P R is a partition such that (i) P A = i = 1 n P A i is called the set of operation places, where i , j N n , i j , P A i and P A i P A j = ; (ii) P 0 = i = 1 n { p i 0 } is called the set of idle places; (iii) P R = i = 1 n P R i = { r 1 , r 2 , , r m | m N + } is called the set of resource places.
3. 
T = i = 1 n T i is called the set of transitions, where i , j N n , i j , T i and T i T j = .
4. 
i N n , the subnet N ¯ i generated by P A i { p i 0 } T i , is a strongly connected state machine such that every circuit of the state machine contains idle place p i 0 .
5. 
r P R , there exists a unique minimal P-semiflow I r N | P | such that { r } = | | I r | | P R , P 0 | | I r | | = , P A | | I r | | , and I r ( r ) = 1 .
6. 
P A = r P R ( | | I r | | r ) .
Definition 25 
([18]). An S 4 PR is a connected generalized self-loop free Petri net N = ( P 0 P S P R , F , T , W ) where the following apply:
1. 
P = P 0 P S P R is a partition such that the following apply:
  • P S = i N + P S i , where for each i N + , P S i , and for each i , j N + , i j , P S i P S j = .
  • P 0 = i N + { p 0 i } .
  • P R = { r 1 , r 2 , , r n } , n > 0 .
2. 
T = i N + T i , where for each i N + , T i , and for each i , j N + , i j , T i T j .
3. 
For each i N + , the subnet N ¯ i = N | ( { p 0 i P S i , T i ) is a strongly connected state machine such that every cycle contains p 0 i .
4. 
For each r P R , there exists a unique minimal P-invariant I r = N + | P | such that { r } = | | I r | | P R , P 0 | I r | = , P S | I r | , and I r ( r ) = 1 .
5. 
P S = r P R ( | | I r | | { r } ) .
Definition 26 
([18]). Let ( N , M 0 ) , N = ( P 0 P S P R , T , F , W ) , be an initially marked S 4 PR. Marking M 0 is said to be an acceptable initial marking for N if and only if the following apply:
1. 
M 0 ( p ) 1 , p P 0 ;
2. 
M 0 ( p ) = 0 , p P S ; and
3. 
M 0 ( r ) m a x { I r ( p ) } , r P R , p P S .
Definition 27 
([18]). Let ( N , M 0 ) , N = ( P 0 P S P R , T , F , W ) be an acceptably marked S 4 PR. Let r P R , and the set of holders of r is the support of a minimal P-invariant I r without place r, i.e., H ( r ) = | | I ( r ) | | { r } .
Definition 28 
([18]). Let ( N , M 0 ) , N = ( P 0 P S P R , T , F , W ) be an acceptably marked S 4 PR. Let S be an emptiable siphon, and T h ( S ) = H S R S is called the thieves of S, where S R = P R S , and H S R = r S R H ( r ) .
For an arbitrary marking M R ( N , M 0 ) , a transition t is M-process-enabled if and only if p t P S such that M ( p ) > 0 . Similarly, a transition t is M-resource-enabled if and only if p t P R such that M ( r ) W ( r , t ) [18].
Proposition 4 
([18]). Let ( N , M 0 ) be an acceptably marked S 4 PR. The system is not live if and only if there exists a marking M R ( N , M 0 ) such that the set of M-process-enabled transitions is non-empty and each of them is M-resource-disabled.
Proposition 5 
([18]). Let ( N , M 0 ) be an acceptably marked S 4 PR. The system is not live if and only if there exists a marking M R ( N , M 0 ) and a siphon S Π such that the following apply:
1. 
r S R , M ( r ) < W ( r , t ) .
2. 
p T h ( S ) , M ( p ) > 0 .
3. 
p S P , M ( p ) = 0 .
Propositions 4 and 5 ascribe the non-liveness of an S 4 PR net to the presence of (i) an insufficiently marked siphon and (ii) a corresponding marking. This is extremely helpful because we can detect and forbid such siphons instead of computing and controlling all SMS; therefore, the number of all SMS exponentially accrues with the size of a PN model. Such an approach may create a skeletal framework of source materials for further publications.

5.1. Properties of Siphons in S 4 PR Nets

Definition 29 
([17]). For r P R , H ( r ) = r P A , the operation places that use r are called the set of holders of r. Let [ S ] = ( r S R H ( r ) ) S . [ S ] is called the complementary set of siphon S.
Definition 30 
([17]). Let r be a resource place and S be a strict minimal siphon in an S 4 R. The holder of resource r is defined as the difference of two multisets I r and r: H ( r ) = I r r . As a multiset, T h ( S ) = r S R H ( r ) r S R , p S A I r ( p ) . p is called the complementary set of siphon S.
Definition 31 
([17]). | | T h ( S ) | | = { p | p r S R H ( r ) , p S is called the support of complementary set T h ( S ) of siphon S.
We can easily see [17] that T h ( S ) P A is true. Let | | T h ( S ) | | i = | | T h ( S ) | | P A i . Then, | | T h ( S ) | | = i = 1 n | | T h ( S ) | | i . Let p | | T h ( S ) | | h S ( p ) p denote T h ( S ) . Then, h S ( p ) indicates that siphon S loses h S ( p ) tokens if the number of tokens in the place p increases by one. h S ( p ) is often named the risk coefficient of the place p.
The set P A is the set of operation places. Each place p 0 i P 0 is called an idle place. Namely, it represents the state in which the corresponding i-th processes are idle. P R is a set of resource places.
Proposition 6 
([93]). A minimal siphon S in an S 4 PR N is an SMS if S is an emptiable minimal siphon (EMS).
Definition 32 
([17]). An initial marking M 0 is acceptable for an S 4 R N = ( P A P 0 P R , T , F , W ) if and only if (i) i N n , M 0 ( p i 0 ) > 0 ; (ii) p P A , M 0 ( p ) = 0 ; and (iii) r P R , M 0 ( r ) m a x { I r ( p ) | p P A } .
Theorem 9 
([10,36]). Let S be a strict minimal siphon in an S 4 R N = ( P A P 0 P R , T , F , W ) . Then, S = S R S A satisfies S P R = S R and S P A = S A .
Definition 33 
([17]). Let r be a resource place and S be a strict minimal siphon in an S 4 R. The holder of resource r is defined as the difference of two multisets I r and r: H ( r ) = I r r . As a multiset, T h ( S ) = r S R H ( r ) r S R , p S A I r ( p ) . p is called the complementary set of siphon S.
Proposition 7 
([17]). Let S be a strict minimal siphon in an S 4 R net ( N , M 0 ) , where N = ( P 0 P A P R , T , F , W ) . A monitor V S is added to ( N , M 0 ) by the enforcement that g S = k S + V S is a P-invariant of the resultant net system ( N V , M 0 V ) , where N V = ( P 0 P A P R { V S } , T , F F V , W W V ) ; p P 0 P A P R , M 0 V ( p ) = M 0 ( p ) . Let f S = r S R I r g S and M 0 V ( V S ) = M 0 ( S ) ξ S ( ξ S N + ). Then, S is max-controlled if ξ S > p S f S ( p ) ( m a x p 1 ) and M 0 V ( V S ) m a x V S .
ξ S is the control depth variable of siphon S. Thus, p S f S ( p ) ( m a x p 1 ) < ξ S < M 0 ( S ) .
Theorem 10 
([17]). Let ( N , M 0 ) be an S 4 R and S be a strongly dependent siphon with η S = i = 1 n a i η S i , where S 1 S n are the elementary siphons of S. S is max-controlled if the following apply:
1. 
( N , M 0 ) is extended by adding n monitors V S 1 V S n such that S 1 S n are max-controlled, respectively, due to Proposition 7;
2. 
i = 1 n a i ξ i > i = 1 n a i . M 0 ( S i ) + p S ( m a x p 1 ) M 0 ( S ) ,
where i N n , p S i f S i ( p ) ( m a x p 1 ) < ξ S i < M 0 ( S i ) ;
3. 
M m i n ( S i ) ξ S i , i N n .
Lemma 7 
([17]). Let S be a siphon in net ( N , M 0 ) and M R ( N , M 0 ) be a marking. S is max-marked under M if M ( S ) > ω ( S ) , where ω ( S ) = p S ( m a x p 1 ) .
Theorem 11 
([17]). Let ( N , M 0 ) be an S 4 R and S be a weakly dependent siphon with η S = i = 1 n a i η S i j = n + 1 n + m a j η S j , where S 1 S n + m are the elementary siphons of S. S is max-controlled if
1. 
( N , M 0 ) is extended by adding n monitors V S 1 V S n such that S 1 S n are max-controlled, respectively, due to Proposition 7;
2. 
i = 1 n a i ξ i > i = 1 n a i M 0 ( S i ) + p S ( m a x p 1 ) M 0 ( S ) ,
where p S i f S i ( p ) ( m a x p 1 ) < ξ S i < M 0 ( S i ) ;
3. 
M m i n ( S i ) ξ S i , i N n .
This theorem was proved in [17]. Since S 4 P is initially well marked, the controllability of a weakly dependent siphon depends only on i = 1 n a i η i . That is, its controllability depends on S 1 , S 2 , , S n only. Thus, this result is right. ( N , M 0 ) is termed well-initially-marked if and only if S Π , M m a x ( S ) = M 0 ( S ) . This means that a siphon in such a PN has the maximal number of tokens at the initial marking.
Definition 34 
([90]). Let ( N μ 1 , M μ 1 ) be a liveness-enforcing Petri net supervisor of an ES 3 PR net model ( N μ 0 , M μ 0 ) , where N μ 1 = ( P 0 P S P R { V S 1 , V S 2 , , V S n } , T , F μ 1 , W μ 1 ) . i { 1 , 2 , , m } , assign a weight α to each place according to a reverse topological numbering on the acyclic state machine induced by P S i T i : p P 0 P R { V S 1 , V S 2 , , V S n } , α ( p ) = 0 ; p ; p P S i if there exists an elementary path from p to p ; then, α ( p ) > α ( p ) .
Lemma 8 
([83,90]). Let ( N , M 0 ) be a marked net and S be a siphon of N. S is max-controlled if there exists a P-invariant I such that p ( | | I | | S ) , m a x p = 1 , | | I | | + S , and p P I ( p ) M 0 ( p ) > p S ) ( m a x p 1 ) .
Proposition 8 
([90]). Let S be a strict minimal siphon in a marked ES 3 PR net ( N μ 0 , M μ 0 ) , where N μ 0 = ( P 0 P S P R , T , F , W ) . Construct k S for S due to Definition 35 (below). A monitor V S is added to ( N μ 0 , M μ 0 ) by the enforcement that g S = k S + V S is a P-invariant of the resultant net system ( N μ 1 , M μ 1 ) , where N μ 1 = ( P 0 P S P R { V S } , T , F μ 1 , W μ 1 ) , p P 0 P S P R , M μ 1 ( p ) = M μ 0 ( p ) . Let h S = r S R I r g S and M μ 1 ( V S ) = M μ 0 ( S ) ξ S ( ξ S N ) . Then, S is max-controlled if ξ S > p S h S ( p ) ( m a x p 1 ) .
Definition 35 
([17,90]). Let S be a strict minimal siphon in an ES 3 PR plant net model ( N μ 0 , M μ 0 ) , where N μ 0 = i = 1 n N i = ( P 0 P S P R , T , F μ 0 , W μ 0 ) . Let { α , β , , γ } { 1 , 2 , , n } such that i { α , β , , γ } , | T h ( S ) | P S i and j { 1 , 2 , , n } { α , β , , γ } , | T h ( S ) | P S j P S j . For S, a non-negative P-vector k S is constructed as follows:
  • Step 1 p P 0 P S P R , k S ( p ) : = 0 ;
  • Step 2 p | T h ( S ) | , k S ( p ) : = h S ( p ) , where T h ( S ) = p | T h ( S ) | h S ( p ) p ;
  • Step 3 i { α , β , , γ } , let p s | T h ( S ) | P S i be such a place that p t S P ( p u , p 0 i ) , p u p s , p t | T h ( S ) | . We assume that there are m such places, p s 1 , p s 2 , , p s m . Certainly, we have { p s i } | i = 1 , 2 , , m } | T h ( S ) | P S i . p s i , let p ν i S P ( p 0 i , p s i ) be such a place that h S ( p ν i ) h S ( p w ) , p w S P ( p 0 i , p s i ) . p x S P ( p 0 i , p i s ) , k S ( p x ) : = h S ( p ν i ) ;
  • Step 4 I m { 1 , 2 , , n } . p y i I m S P ( p 0 i , p s i ) , k S ( p y ) : = h S ( p z i ) , where p z i | T h ( S ) | P S i , and p | T h ( S ) | P S i s.t. h S ( p ) > h S ( p z i ) .

5.2. Example 5

Consider the AMS with a GPN model as given in Figure 10. Its structure is very similar to that in Figure 8. The difference only is that here, in Figure 10, four directed arcs have the weight 2. They are the arcs W ( r 1 , t 6 ) , W ( t 8 , r 1 ) , W ( r 7 , t 15 ) and W ( t 16 , r 7 ) .
The functioning of the AMS in Figure 11 is very similar to that in Figure 8. By contrast to Figure 8, a problem only is that two copies of resources are required when M1 elaborates J2 and when R3 conveys J3 from I3 to M4.
The siphons of this GPN are as follows:
S 1 * = { p 28 , p 32 , r 6 , r 7 }
S 2 * = { p 13 , p 28 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 }
S 3 * = { p 13 , p 28 , p 34 , r 2 , r 3 , r 5 , r 6 , r 7 }
S 4 * = { p 13 , p 28 , p 33 , r 2 , r 3 , r 6 , r 7 }
S 5 * = { p 13 , p 26 , p 27 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 , r 6 }
S 6 = { p 13 , p 26 , p 27 , p 34 , r 2 , r 3 , r 5 , r 6 }
S 7 = { p 13 , p 26 , p 27 , p 33 , r 2 , r 3 , r 6 }
S 8 * = { p 13 , p 25 , p 26 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 }
S 9 = { p 13 , p 25 , p 26 , p 34 , r 2 , r 3 , r 5 }
S 10 = { p 13 , p 25 , p 26 , p 33 , r 2 , r 3 }
S 11 = { p 11 , p 13 , p 24 , p 28 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 }
S 12 = { p 11 , p 13 , p 24 , p 27 , p 35 , r 1 , r 3 , r 4 , r 5 , r 6 }
S 13 = { p 11 , p 13 , p 24 , p 28 , p 34 , r 3 , r 5 , r 6 , r 7 }
S 14 = { p 11 , p 13 , p 24 , p 27 , p 34 , r 3 , r 5 , r 6 }
S 15 = { p 11 , p 13 , p 24 , p 28 , p 33 , r 3 , r 6 , r 7 }
S 16 = { p 11 , p 13 , p 24 , p 27 , p 33 , r 3 , r 6 }
S 17 = { p 11 , p 13 , p 24 , p 25 , p 35 , r 1 , r 3 , r 4 , r 5 }
S 18 = { p 11 , p 13 , p 24 , p 25 , p 34 , r 3 , r 5 }
The strict minimal siphons are denoted by *.
Here, we have P 0 = { p 01 , p 02 , p 03 } , P A 1 = { p 11 , , p 13 } , P A 2 = { p 21 , , p 28 } , P A 3 = { p 31 , , p 35 } , P R = { r 1 , , r 7 } , t 0 1 = t 1 , t 0 2 = t 5 , t 0 5 = t 15 . t 0 i { 1 , 2 , 5 } represents the first transition in the ith process. Formally, t 0 i p 0 i . Resources r 1 , , r 7 correspond to M 1 , M 2 , R 1 , R 2 , M 3 , R 4 , and R 3 , respectively.
Because the structural properties (siphons, traps, invariants) of the PN model displayed in Figure 10 are the same as those in the previous net in Figure 8, we have 10 invariants as follows:
I 1 = p 22 + r 1 I 2 * = p 5 + p 6 + p 7 + p 8 + p 9 + p 10 + p 11 + p 12 + p 13 I 3 = p 12 + p 26 + r 2 I 4 * = p 1 + p 2 + p 3 + p 4 I 5 = p 28 + p 31 + r 7 I 6 = p 27 + p 32 + r 6 I 7 = p 11 + p 13 + p 24 + p 25 + p 33 + r 3 I 8 = p 23 + p 34 + r 5 I 9 = p 21 + p 35 + r 4 I 10 * = p 14 + p 15 + p 16 + p 17 + p 18 + p 19 .
The invariants denoted by * do not have anything to do with resources.
In Figure 10, we have seven resources r 1 r 7 . Consequently, the corresponding minimal P-semiflows are the following:
I r 1 = p 22 + r 1 I r 2 = p 12 + p 26 + r 2 I r 3 = p 11 + p 13 + p 24 + p 25 + p 33 + r 3 I r 4 = p 21 + p 35 + r 4 I r 5 = p 23 + p 34 + r 5 I r 6 = p 27 + p 32 + r 6 I r 7 = p 28 + p 31 + r 7
In the initial state of the system M 0 ( r 1 ) = 2 , M 0 ( r 2 ) = 2 , M 0 ( r 3 ) = 1 , M 0 ( r 4 ) = 1 , M 0 ( r 5 ) = 2 , M 0 ( r 6 ) = 2 , M 0 ( r 7 ) = 2 .
In our example, we have the following holders:
H ( r 1 ) = p 22 ; H ( r 2 ) = p 12 + p 26 ; H ( r 3 ) = p 11 + p 13 + p 24 + p 25 + p 33 ; H ( r 4 ) = p 21 + p 35 ; H ( r 5 ) = p 23 + p 34 ; H ( r 6 ) = p 27 + p 32 ; H ( r 7 ) = p 28 + p 31 . Hence, the complementary sets of siphons and their supports are as follows:
1. For the siphon S 1 * = { p 28 , p 32 , r 6 , r 7 } ,
T h ( S 1 * ) = H ( r 6 ) + H ( r 7 ) ( p 28 + p 32 ) = ( p 27 + p 32 ) + ( p 28 + p 31 ) ( p 28 + p 32 ) = p 27 + p 31
k S 1 * = p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31
g S 1 * = k S 1 * + V S 1 = p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + V S 1 *
r S 1 R I r = I r 6 + I r 7 = p 27 + p 32 + r 6 + p 28 + p 31 + r 7
f S 1 * = r S 1 R I r g S 1 * = p 27 + p 32 + r 6 + p 28 + p 31 + r 7 p 21 p 22 p 23 p 24 p 25 p 26 p 27 p 31 V S 1 * = p 32 + r 6 + p 28 + r 7 p 21 p 22 p 23 p 24 p 25 p 26 V S 1 *
As to Proposition 7 [17],
ξ S 1 * > ! p S R f S 1 * ( p ) ( m a x p 1 ) = f S 1 * ( r 6 ) ( m a x r 6 1 ) + f S 1 * ( r 7 ) ( m a x r 7 1 ) = ( 1 1 ) + ( 2 1 ) = 1 , i.e., ξ S 1 * > 1 e.g., ξ S 1 * = 2 , and M 0 V ( V S 1 * ) m a x V S 1 * = 1
M 0 V ( V S 1 * ) = M 0 V ( S 1 * ) ξ S 1 * = ( 2 + 2 ) 2 = 2
2. For the siphon S 2 * = { p 13 , p 28 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 } ,
T h ( S 2 * ) = H ( r 1 ) + H ( r 2 ) + H ( r 3 ) + H ( r 4 ) + H ( r 5 ) + H ( r 6 ) + H ( r 7 ) ( p 13 + p 28 + p 35 ) = p 22 + ( p 12 + p 26 ) + ( p 11 + p 13 + p 24 + p 25 + p 33 ) + ( p 21 + p 35 ) + ( p 23 + p 34 ) + ( p 27 + p 32 ) + ( p 28 + p 31 ) ( p 13 + p 28 + p 35 ) = p 22 + p 12 + p 26 + p 11 + p 24 + p 25 + p 33 + p 21 + p 23 + p 34 + p 27 + p 32 + p 31 .
k S 2 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + p 33 + p 34
g S 2 * = k S 2 * + V S 2 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + p 33 + p 34 + V S 2 *
r S 2 R I r = I r 1 + I r 2 + I r 3 + I r 4 + I r 5 + I r 6 + I r 7 = p 22 + r 1 + p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 21 + p 35 + r 4 + p 23 + p 34 + r 5 + p 27 + p 32 + r 6 + p 28 + p 31 + r 7
f S 2 * = r S 2 R I r g S 2 * = p 22 + r 1 + p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 21 + p 35 + r 4 + p 23 + p 34 + r 5 + p 27 + p 32 + r 6 + p 28 + p 31 + r 7 ( p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + p 33 + p 34 + V S 2 * ) = r 1 + r 2 + p 13 + r 3 + p 35 + r 4 + r 5 + r 6 + p 28 + r 7 V S 2 *
ξ S 2 * > ! p S R f S 2 * ( p ) ( m a x p 1 ) = f S 2 * ( r 1 ) ( m a x r 1 1 ) + f S 2 * ( r 2 ) ( m a x r 2 1 ) + f S 2 * ( r 3 ) ( m a x r 3 1 ) + f S 2 * ( r 4 ) ( m a x r 4 1 ) + f S 2 * ( r 5 ) ( m a x r 5 1 ) + f S 2 * ( r 6 ) ( m a x r 2 1 ) + f S 2 * ( r 7 ) ( m a x r 7 1 ) = ( 2 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 2 1 ) = 2 ,   e.g. ,   ξ S 1 * = 3 ,   and   M 0 V ( V S 2 * ) m a x V S 2 * = 1 M 0 V ( V S 2 * ) = M 0 V ( S 2 * ) ξ S 2 * = ( 2 + 2 + 1 + 1 + 2 + 2 + 2 ) ξ S 2 * = 12 ξ S 2 * = 9
3. For the siphon S 3 * = { p 13 , p 28 , p 34 , r 2 , r 3 , r 5 , r 6 , r 7 } ,
T h ( S 3 * ) = H ( r 2 ) + H ( r 3 ) + H ( r 5 ) + H ( r 6 ) + H ( r 7 ) ( p 13 + p 28 + p 34 ) = ( p 12 + p 26 ) + ( p 11 + p 13 + p 24 + p 25 + p 33 ) + ( p 23 + p 34 ) + ( p 27 + p 32 ) + ( p 28 + p 31 ) ( p 13 + p 28 + p 34 ) = p 12 + p 26 + p 11 + p 24 + p 25 + p 33 + p 23 + p 27 + p 32 + p 31 .
k S 3 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + p 33
g S 3 * = k S 3 * + V S 3 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + p 33 + V S 3 *
r S 3 R I r = I r 2 + I r 3 + I r 5 + I r 6 + I r 7 = p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 23 + p 34 + r 5 + p 27 + p 32 + r 6 + p 28 + p 31 + r 7
f S 3 * = r S 3 R I r g S 3 * = p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 23 + p 34 + r 5 + p 27 + p 32 + r 6 + p 28 + p 31 + r 7 ( p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + p 33 + V S 3 * ) = r 2 + p 13 + r 3 + p 34 + r 5 + r 6 + p 28 + r 7 p 21 p 22 V S 3 *
ξ S 3 * > ! p S R f S 3 * ( p ) ( m a x p 1 ) = f S 3 * ( r 2 ) ( m a x r 2 1 ) + f S 3 * ( r 3 ) ( m a x r 3 1 ) + f S 3 * ( r 5 ) ( m a x r 5 1 ) + f S 3 * ( r 6 ) ( m a x r 2 1 ) + f S 3 * ( r 7 ) ( m a x r 7 1 ) = ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 2 1 ) = 1 , e.g., ξ S 3 * = 2 , and M 0 V ( V S 3 * ) m a x V S 3 * = 1
M 0 V ( V S 3 * ) = M 0 V ( S 3 * ) ξ S 2 * = ( 2 + 1 + 2 + 2 + 2 ) ξ S 3 * = 8 ξ S 3 * = 6
4. For the siphon S 4 * = { p 13 , p 28 , p 33 , r 2 , r 3 , r 6 , r 7 } ,
T h ( S 4 * ) = H ( r 2 ) + H ( r 3 ) + H ( r 6 ) + H ( r 7 ) ( p 13 + p 28 + p 33 ) = ( p 12 + p 26 ) + ( p 11 + p 13 + p 24 + p 25 + p 33 ) + ( p 27 + p 32 ) + ( p 28 + p 31 ) ( p 13 + p 28 + p 33 ) = p 12 + p 26 + p 11 + p 24 + p 25 + p 27 + p 32 + p 31 . k S 4 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 g S 4 * = k S 4 * + V S 4 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 26 + p 27 + p 31 + p 32 + V S 4 *
r S 4 R I r = I r 2 + I r 3 + I r 6 + I r 7 = p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 27 + p 32 + r 6 + p 28 + p 31 + r 7
f S 4 * = r S 4 R I r g S 4 * = p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 27 + p 32 + r 6 + p 28 + p 31 + r 7 ( p 12 + p 26 + p 11 + p 24 + p 25 + p 27 + p 32 + p 31 + V S 4 * ) = r 2 + p 13 + p 33 + r 3 + r 6 + p 28 + r 7 V S 4 * p 22 p 23 p 32 .
ξ S 4 * > ! p S R f S 4 * ( p ) ( m a x p 1 ) = f S 4 * ( r 2 ) ( m a x r 2 1 ) + f S 4 * ( r 3 ) ( m a x r 3 1 ) + f S 4 * ( r 6 ) ( m a x r 6 1 ) + f S 4 * ( r 7 ) ( m a x r 7 1 ) = ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 2 1 ) = 1 ,   e.g. ,   ξ S 4 * = 2 ,   and   M 0 V ( V S 3 * ) m a x V S 4 * = 1 .
M 0 V ( V S 4 * ) = M 0 V ( S 4 * ) ξ S 4 * = ( 2 + 1 + 2 + 2 ) ξ S 4 * = 7 ξ S 4 * = 5
5. For the siphon S 5 * = { p 13 , p 26 , p 27 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 , r 6 } ,
T h ( S 5 * ) = H ( r 1 ) + H ( r 2 ) + H ( r 3 ) + H ( r 4 ) + H ( r 5 ) + H ( r 6 ) ( p 13 , p 26 , p 27 , p 35 ) = p 22 + ( p 12 + p 26 ) + ( p 11 + p 13 + p 24 + p 25 + p 33 ) + ( p 21 + p 35 ) + ( p 23 + p 34 ) + ( p 27 + p 32 ) ( p 13 , p 26 , p 27 , p 35 ) = p 22 + p 12 + p 11 + p 24 + p 25 + p 33 + p 21 + p 23 + p 34 + p 32 .
k S 5 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 31 + p 32 + p 33 + p 34 .
g S 5 * = k S 5 * + V S 5 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 31 + p 32 + p 33 + p 34 + V S 5 * .
r S 5 R I r = I r 1 + I r 2 + I r 3 + I r 4 + I r 5 + I r 6 = p 22 + r 1 + p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 21 + p 35 + r 4 + p 23 + p 34 + r 5 + p 27 + p 32 + r 6 .
f S 5 * = r S 5 R I r g S 5 * = p 22 + r 1 + p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 21 + p 35 + r 4 + p 23 + p 34 + r 5 + p 27 + p 32 + r 6 ( p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 25 + p 31 + p 32 + p 33 + p 34 + V S 5 * ) = r 1 + p 26 + r 2 + p 13 + r 3 + p 35 + r 4 + r 5 + p 27 + r 6 V S 5 * p 31 = .
ξ S 5 * > ! p S R f S 5 * ( p ) ( m a x p 1 ) = f S 5 * ( r 1 ) ( m a x r 1 1 ) + f S 5 * ( r 2 ) ( m a x r 2 1 ) + f S 5 * ( r 3 ) ( m a x r 3 1 ) f S 5 * ( r 4 ) ( m a x r 4 1 ) + f S 5 * ( r 5 ) ( m a x r 5 1 ) + f S 5 * ( r 6 ) ( m a x r 6 1 ) = ( 2 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) = 1 , e.g., ξ S 5 * = 2 , and M 0 V ( V S 5 * ) m a x V S 5 * = 1
M 0 V ( V S 5 * ) = M 0 V ( S 5 * ) ξ S 5 * = ( 2 + 2 + 1 + 1 + 2 + 2 ) ξ S 2 * = 10 ξ S 5 * = 8
6. For the siphon S 8 * = { p 13 , p 25 , p 26 , p 35 , r 1 , r 2 , r 3 , r 4 , r 5 } ,
T h ( S 8 * ) = H ( r 1 ) + H ( r 2 ) + H ( r 3 ) + H ( r 4 ) + H ( r 5 ) ( p 13 , p 25 , p 26 , p 35 ) = p 22 + ( p 12 + p 26 ) + ( p 11 + p 13 + p 24 + p 25 + p 33 ) + ( p 21 + p 35 ) + ( p 23 + p 34 ) ( p 13 , p 25 , p 26 , p 35 ) = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 33 + p 34 .
k S 8 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 33 + p 34 .
g S 8 * = k S 8 * + V S 8 * = p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 33 + p 34 + V S 8 * .
r S 8 R I r = I r 1 + I r 2 + I r 3 + I r 4 + I r 5 = p 22 + r 1 + p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 21 + p 35 + r 4 + p 23 + p 34 + r 5 .
f S 8 * = r S 8 R I r g S 8 * = p 22 + r 1 + p 12 + p 26 + r 2 + p 11 + p 13 + p 24 + p 25 + p 33 + r 3 + p 21 + p 35 + r 4 + p 23 + p 34 + r 5 ( p 11 + p 12 + p 21 + p 22 + p 23 + p 24 + p 33 + p 34 + V S 8 * ) = r 1 + p 26 + r 2 + p 13 + p 25 + r 3 + p 35 + r 4 + r 5 V S 8 * .
ξ S 8 * > ! p S R f S 8 * ( p ) ( m a x p 1 ) = f S 8 * ( r 1 ) ( m a x r 1 1 ) + f S 8 * ( r 2 ) ( m a x r 2 1 ) + f S 8 * ( r 3 ) ( m a x r 3 1 ) + f S 5 * ( r 4 ) ( m a x r 4 1 ) + f S 5 * ( r 5 ) ( m a x r 5 1 ) = ( 2 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) + ( 1 1 ) = 1 , e.g., ξ S 5 * = 2 , and M 0 V ( V S 8 * ) m a x V S 8 * = 1
M 0 V ( V S 8 * ) = M 0 V ( S 8 * ) ξ S 8 * = ( 2 + 2 + 1 + 1 + 2 ) ξ S 2 * = 8 ξ S 8 * = 6 .
Thus,
| | T h ( S 1 * ) | | = { p 27 , p 31 } | | T h ( S 2 * ) | | = { p 11 , p 12 , p 21 , p 22 , p 23 , p 24 , p 25 , p 26 , p 27 , p 31 , p 32 , p 33 , p 34 } | | T h ( S 3 * ) | | = { p 11 , p 12 , p 23 , p 24 , p 25 , p 26 , p 27 , p 28 , p 32 , p 33 , p 35 } | | T h ( S 4 * ) | | = { p 11 , p 12 , p 24 , p 25 , p 26 , p 27 , p 31 , p 32 } | | T h ( S 5 * ) | | = { p 11 , p 12 , p 21 , p 22 , p 23 , p 24 , p 25 , p 32 , p 33 , p 34 } | | T h ( S 8 * ) | | = { p 11 , p 12 , p 21 , p 22 , p 23 , p 24 , p 33 , p 34 } .
To avoid confusion, [ S ] is often used for denoting the set of places contained in | | T h ( S ) | | as well as T h ( S ) .
The controllability of strongly dependent siphons S 6 , S 7 , S 9 S 18 can be verified by means of Theorem 9 [25,90], as it was demonstrated on the strongly dependent siphon S 3 in Example 3 introduced in Section 4.3.

6. Results

In this paper, two principal kinds of deadlock prevention were presented, namely for AMSs modeled by ordinary Petri nets (OPNs) and generalized Petri nets (GPNs), respectively. In both kinds, two approaches were verified—on small AMSs with simpler structures and on larger AMSs with more complicated structures. Both approaches were illustrated by several examples. In all cases, the deadlock prevention was based on Petri net siphons. Namely, the controllability of siphons plays a principal role in all cases. PN siphons are divided into elementary siphons and dependent ones. Empty siphons lead to deadlocks. For each SMS in the PN model of AMSs, a monitor has to be added to prevent it from emptying.
A group of monitors creates a supervisor that prevents all siphons from emptying and thus prevents Petri net-based models of AMSs from deadlocks.

6.1. Deadlock Prevention in Simpler OPN Models of AMSs

The theory of deadlock prevention for the S 3 PR model was introduced. The controllability of elementary siphons as well as siphons strongly and weakly dependent on them was presented.
Two illustrative examples were included—Example 1, in order to show deadlock prevention by means of elementary and strongly dependent siphons, as well as Example 2, in order to illustrate the approach of deadlock prevention based on the usage of complementary siphons.
Example 1 in Section 4.1 presents an S 3 PR model of an AMS with two processes (production lines) sharing three resources. Its OPN-based model is on the left side of Figure 1. On the right side of Figure 1, the reachability graph (RG) belonging to the net model is depicted. As it can be seen, this RG contains two deadlocks (see nodes 13 and 14). To prevent them, strict minimal siphons (SMS) are computed by means of the tool GPenSIM, which is described in [84]. There are three SMSs: two of them are elementary siphons and the third is a strongly dependent one (on the previous two ones). Figure 2 presents the given model with the supervisor consisting of three monitors V S 1 V S 3 . The first two correspond to two elementary siphons, while S 3 is a strongly dependent one.
The problem was that at the given resources (i.e., the markings of p 9 p 11 being a unit), the standardly proposed supervisor with monitors V S 1 , V S 2 was not able to remove both deadlocks—see the left side of Figure 3, where it is clear that the RT node N 4 is a deadlock.
Consequently, the third monitor V S 3 had to be added. However, it was constructed nonstandardly by another approach—see Section 4
Then, after including V S 3 , all deadlocks are prevented, as it can be seen from the RG on the right side of Figure 3 representing the state space of the model controlled by the completed supervisor. The RG has an abundant number of reachable states (e.g., in comparison with the RG in Figure 4 belonging to Example 2 in Section 4.2). With respect to the approach in [46], this supervisor is optimal, i.e., maximally permissive. This can be understood to be a first result of this paper.
Example 2 in Section 4.2 represents the deadlock prevention of the same model as that in Example 1, but the process of the supervisor synthesis is based on complementary siphons. Three monitors of the supervisor are shown in Figure 4 (left) while the corresponding RG is shown on the right side of Figure 4. Although here, all deadlocks are also prevented, the corresponding RG is not as expansive as that in Example 1. It means that the state space of the model controlled by this supervisor has fewer reachable states than the model in Example 1 in Section 4.1. This finding is another one of our contributions (results) to the topic of deadlock prevention. However, information based on one simple example does not yet provide us with the basis for more serious generalization.

6.2. Deadlock Prevention in Simpler GPN Models of AMS

The theory of deadlock prevention for Extended Systems of Simple Sequential Processes with Resources ( ES 3 PRs) was introduced. The theory for the controllability of elementary siphons as well as siphons strongly and weakly dependent on them utilized a method completely different from those previous used. To synthesize monitors of the supervisor, Theorem 9 was applied. First, the analysis of holders of resources H ( r ) by means of PN P-invariants was performed. Then the complementary set T h ( S ) of siphon S had to be computed. The function h ( S ) following from it helps find the corresponding monitor and its interconnections with the original uncontrolled PN model of the AMS as well as set its marking. The procedure consisting of Equations (12)–(27) corresponds to the control synthesis for elementary siphons S 1 , S 2 . For the control of the strongly dependent siphon S 3 , condition (2) of the Theorem 9 has to be used.
Example 3 in Section 4.3 was inserted to illustrate deadlock prevention for a GPN by using a method that was completely different from those used in the previous two examples. The structure of the PN model is the same as those in the previous two examples. However, there are four arches with double weights. Already simply because of the existence of arches with such weights, the marking of places representing resources must be higher. This situation is shown on the left side of Figure 5. After the supervisor synthesis by the method described in Section 4.3, we obtained three monitors creating the supervisor displayed on the right side of Figure 5. The RG displayed in Figure 6 shows that there are 36 reachable states, which is a quite a nice number (“freedom”). This result cannot be compared with the results of the previous two examples, because due to the multiplicity of arcs in the PN model, the resources (more precisely markings of resource places) also had to be increased.

6.3. Deadlock Prevention in More Complex OPN Models of AMS

The same theory as that mentioned in Section 4.1, i.e., by elementary siphons as well as siphons strongly and weakly dependent on them, was applied to the deadlock prevention of a more complex OPN model.
Here, the same procedure as that in Example 1 was used, only the computing of the siphons took longer.
Example 4 in Section 4.4 was included to illustrate this application. The scheme of such a plant is displayed in Figure 7, and its OPN model is shown in Figure 8. The net has 18 SMSs. Six of them are elementary siphons, and the other ones are strongly dependent on them. The monitors of the supervisor are depicted in Figure 9. The procedure of synthesizing the supervisor is described in detail in Section 4.4. The RG is too large to be presented here.

6.4. Deadlock Prevention in More Complex GPN Models of AMSs

The theory for the deadlock prevention of Simple Systems of Simple Sequential Processes with Shared Resources ( S 4 PRs) was introduced and applied in Section 4.
Here, the same procedure as that in Example 3 was used, only the computing of the siphons and setting of the monitors took longer.
To illustrate the deadlock prevention procedure, Example 5 was introduced in Section 5.2. The structure of the model is similar to that in Figure 8, except that the four arches weigh twice as much. This model is displayed in Figure 10. After applying the procedure described in Section 4, we obtained the monitors of the supervisor depicted in Figure 11.

7. Discussion

The results obtained in this paper are applicable for both OPN-based and GPN-based models of AMSs. While the former models are suitable for classical AMSs with simple interactions among devices (the weights of the PN arches are the same as that of the unit), the latter models are appropriate for more modern AMSs with multiple interactions among devices (the weights of PN arches are greater than that of the unit).
Deadlock prevention is an off-line process. The deadlocks have to be prevented before building the real AMS. This is the only way to avoid unnecessary delays and downtimes occurring during the reconstruction of the AMS, which is necessary to eliminate deadlocks that appeared during the already launched operation of the real AMS built without previous deadlock prevention on the mathematical model.
Before diving into the discussion, it is necessary to say that formal methods like fault diagnosis, performance evaluation, etc. are very important for the analysis of technical systems and for their control synthesis. AMSs are no exception in this regard. Mathematical modeling, simulation, supervisory control, etc. are very important parts of deadlock prevention in AMSs. They provide efficient help and knowledge of the construction and real implementation of AMSs. For mathematical descriptions of AMSs and their modeling, creating Petri nets is very effective. The same apparatus is very suitable also for synthesizing the supervisory control, making deadlock prevention possible. From this point of view, an AMS can be perceived as a resource allocation systems (RAS).
There are a multitude of PN-based approaches to deadlock prevention in AMSs. However, there exist two main streams of methods: namely, methods based on (i) reachability trees and P-invariants of PN and (ii) PN siphons and traps. The origin of the former method consists of forbidding states in DESs in such a way that a set of legal PN markings is demarcated by a set of constraints in the form of linear inequalities (so-called General Mutual Exclusion Constraints (GMEC)). In such a case, the PN-based solution exists, and it is maximally permissive (optimal). The latter method, i.e., siphon based control, is a way to effectively prevent the occurrence of deadlocks. Its main aim is to prevent emptying siphons, because empty or insufficiently marked siphons cause deadlocks. In general, especially for AMS models based on GPNs, a policy of siphon-based deadlock prevention usually does not make it possible to find a maximally permissive supervisor.
In this paper, the siphon-based approach was presented for both OPN and GPN based models of AMSs. The obtained results are illustrated in the five corresponding examples. They were described in detail in Section 6.

8. Conclusions

The area of deadlock prevention in complex AMSs is very large. Consequently, there are many development trends in the theory and its applications.
In the future, we would like to pay attention not only to deadlock prevention when it is necessary to know all of the siphons but also other trends where it is not necessary to know absolutely all of the siphons. Also, approaches based on optimization by means of MIP (Mixed Integer Programming) and MILP (Mixed-Integer Linear Programming) are interesting areas for further research for deadlock prevention. In our opinion, robust deadlock control for AMSs seems to be a very promising area of research. The approach based on extended elementary siphons applicable to GPN models of AMSs seems to be very useful, too.

Funding

This research received no external funding.

Data Availability Statement

Data are contained within the article.

Acknowledgments

This work was partially supported by the Slovak Grant Agency for Science VEGA under Grant No. 2/0005/25.

Conflicts of Interest

The author declares no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript:
AMSsAutomated Manufacturing Systems
DESsDiscrete-Event Systems
FMSsFlexible Manufacturing Systems
PNsPetri Nets
RASsResource Allocation Systems
OPNsOrdinary PNs
GPNsGeneralized PNs
SMSsStrict Minimal Siphons
S 3 PRsSystems of Simple Sequential Processes with Resources
ES 3 PRExtended S 3 PR
GS 3 PRGeneralized S 3 PR
S 3 PGR 2 sSystems of Simple Sequential Processes with General Resources Requirement
GLS 3 PRGeneralized Linear System of Simple Sequential Processes with Resources
S 4 RsSystems of Sequential Systems with Shared Resources
S 4 PRsSimple Systems of Simple Sequential Processes with Resources

References

  1. Iordache, M.V.; Antsaklis, P.J. Supervisory Control of Concurrent Systems: A Petri Net Structural Approach; Birkhäuser: Boston, MA, USA, 2008. [Google Scholar] [CrossRef]
  2. Tarjan, R. Depth-First Search and Linear Graph Algorithms. SIAM J. Comput. 1972, 1, 146–160. [Google Scholar] [CrossRef]
  3. Liu, G.Y.; Barkaoui, K. A survey of siphons in Petri nets. Inf. Sci. 2016, 363, 198–220. [Google Scholar] [CrossRef]
  4. Yan, M.; Zhu, R.; Li, Z.; Zhou, M. A Siphon-based Deadlock Prevention Policy for a Class of Petri Nets-S3PMR. In Proceedings of the 17th World Congress of the International Federation of Automatic Control, Seoul, Republic of Korea, 6–11 July 2008; pp. 14467–14472. [Google Scholar]
  5. Chao, Y.C. Computation of Elementary Siphons in Petri Nets For Deadlock Control. Comput. J. 2006, 49, 470–479. [Google Scholar] [CrossRef]
  6. Hu, H.; Li, Z.W. Liveness Enforcing Supervision in Video Streaming Systems Using Siphons. J. Inf. Sci. Eng. 2009, 25, 1863–1884. [Google Scholar] [CrossRef]
  7. Chao, D.Y. Max*-controlled siphons for liveness of S3PGR2. IET Control Theory Appl. 2007, 1, 933–936. [Google Scholar] [CrossRef]
  8. Chao, D.Y.; Chen, J.-T.; Yu, F. A novel liveness condition for S3PGR2. Trans. Inst. Meas. Control 2012, 35, 131–137. [Google Scholar] [CrossRef]
  9. Hou, Y.F.; Li, Z.W.; Al-Ahmari, A.M.; El-Tamimi, A.-Z.M.; Nasr, E.A. Extended Elementary Siphons and Their Application to Liveness-Enforcement of Generalized Petri Nets. Asian J. Control 2014, 16, 1789–1810. [Google Scholar] [CrossRef]
  10. Tricas, F.; García-Vallés, F.; Colom, J.M.; Ezpeleta, J. An Iterative Method for Deadlock Prevention in FMS. In Discrete Event Systems; The Springer International Series in Engineering and Computer Science; Boel, R., Stremersch, G., Eds.; Springer: Boston, MA, USA, 2000; Volume 569. [Google Scholar]
  11. Park, J.; Reveliotis, S.A. Deadlock avoidance in sequential resource allocation systems with multiple resource acquisitions and flexible routings. IEEE Trans. Autom. Control 2001, 46, 1572–1583. [Google Scholar] [CrossRef]
  12. Tricas, F.; Colom, J.M.; Ezpeleta, J. A solution to the problem of deadlocks in concurrent systems using Petri nets and integer linear programming. In Proceedings of the 11th Europe Simulation Symposium (ESS’99), Erlangen, Germany, 26–28 October 1999; pp. 542–546, ISBN 1-56555-177-X. [Google Scholar]
  13. 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, 1–12. [Google Scholar] [CrossRef]
  14. Liu, D.; Li, Z.W.; Zhou, M.C. A parameterized liveness and ratio-enforcing supervisor for a class of generalized Petri nets. Automatica 2013, 49, 3167–3179. [Google Scholar] [CrossRef]
  15. Li, Z.W.; Zhou, M.C. Elementary Siphons of Petri Nets and Their Application to Deadlock Prevention in Flexible Manufacturing Systems. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 2004, 34, 38–51. [Google Scholar] [CrossRef]
  16. 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]
  17. Li, Z.W.; Zhou, M.C. Deadlock Resolution in Automated Manufacturing Systems: A Novel Petri Net Approach; Springer: London, UK, 2009. [Google Scholar] [CrossRef]
  18. Tricas, F.; Garcia-Valles, F.; Colom, J.M.; Ezpeleta, J. A Petri net structure-based deadlock prevention solution for sequential resource allocation systems. In Proceedings of the IEEE International Conference on Robotics and Automation, ICRA 2005, Barcelona, Spain, 18–22 April 2005; pp. 271–277. [Google Scholar] [CrossRef]
  19. Zhuang, Q.; Dai, W.; Wang, S.G.; Ning, F. Deadlock Prevention Policy for S4PR Nets Based on Siphon. IEEE Access 2018, 6, 50648–50658. [Google Scholar] [CrossRef]
  20. Hou, Y.; Li, Z.; Zhao, M.; Liu, D. Extended elementary siphon-based deadlock prevention policy for a class of generalised Petri nets. Int. J. Comput. Integr. Manuf. 2014, 27, 85–102. [Google Scholar] [CrossRef]
  21. Zhong, C.; Li, Z.; Barkaoui, K. Monitor Design for Siphon Control in S4R Nets: From Structure Analysis Points of View. Int. J. Innov. Comput. Inf. Control 2011, 7, 6677–6690. [Google Scholar]
  22. Cano, E.E.; Rovetto, C.A.; Colom, J.M. An algorithm to compute the minimal siphons in S4PR nets. Discret. Event Dyn. Syst. 2012, 22, 403–428. [Google Scholar] [CrossRef]
  23. Wang, S.G.; You, D.; Zhou, M.C. A necessary and sufficient condition for a resource subset to generate a strict minimal siphon in S4PR. IEEE Trans. Autom. Control 2017, 62, 4173–4179. [Google Scholar] [CrossRef]
  24. Ma, T.; Wang, J.; Hu, H. A Strict Minimal Siphon-Based Necessary and Sufficient Condition for Liveness Verification in General Petri Nets. IEEE Access 2025, 13, 53517–53530. [Google Scholar] [CrossRef]
  25. Li, Z.W.; Zhang, J.; Zhao, M. Liveness-Enforcing Supervisor Design for a Class of Generalized Petri Net Models of Flexible Manufacturing Systems. IET Control Theory Appl. 2007, 1, 955–967. [Google Scholar] [CrossRef]
  26. Abdul-Hussin, M.H.; Banaszak, Z.A. Siphon-based deadlock prevention for a class of S4PR generalized Petri nets. In Proceedings of the 2017 International Conference on Control, Automation and Information Sciences (ICCAIS), Chiang Mai, Thailand, 31 October–1 November 2017; IEEE Xplore, Electronic: New York, NY, USA, 2017; pp. 239–244. [Google Scholar] [CrossRef]
  27. Pan, Y.-L.; Tseng, C.-Y.; Chen, J.-C. Enhancement of Computational Efficiency for Deadlock Recovery of Flexible Manufacturing Systems Using Improved Generating and Comparing Aiding Matrix Algorithms. Processes 2023, 11, 3026. [Google Scholar] [CrossRef]
  28. Kumaran, T.K.; Chang, W.; Cho, H.; Wysk, R.A. A structured approach to deadlock detection, avoidance and resolution in flexible manufacturing systems. Int. J. Prod. Res. 1994, 32, 2361–2379. [Google Scholar] [CrossRef]
  29. Gligor, V.D.; Shattuck, S.H. On deadlock detection in distributed systems. IEEE Trans. Softw. Eng. 1980, 6, 435–440. [Google Scholar] [CrossRef]
  30. Wysk, R.A.; Yang, N.-S.; Joshi, S. Resolution of deadlocks in flexible manufacturing systems: Avoidance and recovery approaches. J. Manuf. Syst. 1994, 13, 128–138. [Google Scholar] [CrossRef]
  31. Gebraeel, N.Z.; Lawley, M.A. Deadlock detection, prevention, and avoidance for automated tool sharing systems. IEEE Trans. Robot. Autom. 2001, 17, 342–356. [Google Scholar] [CrossRef]
  32. Grobelna, I.; Karatkevich, A. A Deadlock Recovery Policy for Flexible Manufacturing Systems with Minimized Traversing within Reachability Graph. In Proceedings of the 2022 21st International Symposium INFOTEH-JAHORINA (INFOTEH), East Sarajevo, Bosnia and Herzegovina, 16–18 March 2020; pp. 1–6. [Google Scholar] [CrossRef]
  33. Li, Z.W.; Liu, G.Y.; Hanisch, H.-M.; Zhou, M.C. Deadlock Prevention Based on Structure Reuse of Petri Net Supervisors for Flexible Manufacturing Systems. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 2012, 42, 178–191. [Google Scholar] [CrossRef]
  34. Čapkovič, F. Sustainability of Automated Manufacturing Systems with Resources by Means of Their Deadlock Prevention. Electronics 2024, 13, 3517. [Google Scholar] [CrossRef]
  35. Duan, W.; Zhong, C.; Wang, X.; Rehman, A.U.; Umer, U.; Wu, A.N. A Deadlock Prevention Policy for Flexible Manufacturing Systems Modeled With Petri Nets Using Structural Analysis. IEEE Access 2019, 7, 49362–49376. [Google Scholar] [CrossRef]
  36. Abdallah, I.B.; ElMaraghy, H.A. Deadlock prevention and avoidance in FMS: A Petri net based approach. Int. J. Adv. Manuf. Technol. 1998, 14, 704–715. [Google Scholar] [CrossRef]
  37. Li, Z.W.; Zhou, M.C.; Wu, N.Q. A Survey and Comparison of Petri Net-Based Deadlock Prevention Policies for Flexible Manufacturing Systems. IEEE Trans. Syst. Man Cybern.-Part C Appl. Rev. 2008, 38, 173–187. [Google Scholar] [CrossRef]
  38. Huang, Y.S. Design of deadlock prevention supervisors using Petri nets. Int. J. Adv. Manuf. Technol. 2007, 35, 349–362. [Google Scholar] [CrossRef]
  39. Barkaoui, K.; Abdallah, I.B. A Deadlock Prevention Method for a Class of FMS. In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics, Vancouver, BC, Canada, 22–25 October 1995; pp. 4119–4124. [Google Scholar] [CrossRef]
  40. Li, Z.; Shpitalni, M. Smart deadlock prevention policy for flexible manufacturing systems using Petri nets. IET Control Theory Appl. 2009, 3, 362–374. [Google Scholar] [CrossRef]
  41. More, S.S.; Bhatwadekar, S.D. Analysis of Flexible Manufacturing System using Petri Nets to design a Deadlock Prevention Policy. Int. J. Eng. Res. Technol. (IJERT) 2016, 5, 448–453. [Google Scholar] [CrossRef]
  42. Zhu, R. A deadlock prevention approach for flexible manufacturing systems with uncontrollable transitions in their Petri net models. Asian J. Control 2011, 14, 217–229. [Google Scholar] [CrossRef]
  43. Zhong, C.; Li, Z. A deadlock prevention approach for flexible manufacturing systems without complete siphon enumeration of their Petri net models. Eng. Comput. 2009, 25, 269–278. [Google Scholar] [CrossRef]
  44. Wang, S.G.; Wu, W.H.; Yang, J. Deadlock prevention policy for a class of petri nets based on complementary places and elementary siphons. J. Intell. Manuf. 2015, 26, 321–330. [Google Scholar] [CrossRef]
  45. Piroddi, L.; Cordone, R.; Fumagalli, I. Selective siphon control for deadlock prevention in Petri nets. IEEE Trans. Syst. Man, Cybern. Part A 2008, 38, 1337–1348. [Google Scholar] [CrossRef]
  46. Uzam, M. An Optimal Deadlock Prevention Policy for Flexible Manufacturing Systems Using Petri Net Models with Resources and the Theory of Regions. Int. J. Adv. Manuf. Technol. 2002, 19, 192–208. [Google Scholar] [CrossRef]
  47. Liu, G.; Chao, D.; Uzam, M. Maximally permissive deadlock prevention via an invariant controlled method. Int. J. Prod. Res. 2013, 51, 4431–4442. [Google Scholar] [CrossRef]
  48. Xing, K.; Zhou, M.C.; Liu, H.; Tian, F. Optimal Petri-Net-Based Polynomial-Complexity Deadlock-Avoidance Policies for Automated Manufacturing Systems. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 2009, 39, 188–199. [Google Scholar] [CrossRef]
  49. Tricas, F. Deadlock Analysis, Prevention and Avoidance in Sequential Resource Allocation Systems. Ph.D. Dissertation, University of Zaragoza, Zaragoza, Spain, 2003. [Google Scholar]
  50. Pan, Y.-L. One Computational Innovation Transition-Based Recovery Policy for Flexible Manufacturing Systems Using Petri Nets. Appl. Sci. 2020, 10, 2332. [Google Scholar] [CrossRef]
  51. Hou, Y.F.; Barkaoui, K. Deadlock analysis and control based on Petri nets: A siphon approach review. Adv. Mech. Eng. 2017, 9, 1–30. [Google Scholar] [CrossRef]
  52. Lautenbach, K.; Ridder, H. Liveness in bounded Petri nets which are covered by T-invariants. In Applications and Theory of Petri Nets, Lecture Notes in Computer Science; Valette, R., Ed.; Springer: Berlin, Germany, 1994; Volume 815, pp. 358–375. [Google Scholar]
  53. Lautenbach, K. Linear algebraic calculation of deadlocks and traps. In Concurrency and Nets; Voss, K., Genrich, H.J., Rozenberg, G., Eds.; Advances in Petri Nets; Springer: Berlin/Heidelberg, Germany, 1987. [Google Scholar]
  54. Unruh, E.; Delfmann, P.; Thimm, M. Quantitative Deadlock Analysis in Petri Nets using Inconsistency Measures. In Proceedings of the 2021 IEEE 3rd Conference on Business Informatics (CBI), Bolzano, Italy, 1–3 September 2021; 10p. [Google Scholar] [CrossRef]
  55. Thimm, M. On the evaluation of inconsistency measures. In Measuring Inconsistency in Information; Series Studies in Logic; Grant, J., Martinez, M.V., Eds.; College Publications: Melbourne, Australia, 2018; Volume 73, ISBN 9781848902442. [Google Scholar]
  56. Desel, J.; Kilinc, G. Observable Liveness. In Proceedings of the International Workshop on Petri Nets and Software Engineering, PNSE’14, a Satellite Event of Petri Nets 2014, Tunis, Tunisia, 23–24 June 2014; CEUR Workshop Proceedings, 1160. Moldt, D., Rölke, H., Eds.; Universität Hamburg: Hamburg, Germany, 2014; pp. 143–163. [Google Scholar]
  57. Zhong, C.; He, W.; Li, Z.; Wu, N.; Qu, T. Deadlock analysis and control using Petri net decomposition techniques. Inf. Sci. 2019, 482, 440–456. [Google Scholar] [CrossRef]
  58. Grobelna, I.; Karatkevich, A. Deadlock detection in Petri nets: One trace for one deadlock? In Proceedings of the 7th International Conference on Human System Interactions (HSI), Lisbon, Portugal, 16–18 June 2014; 5p. [Google Scholar] [CrossRef]
  59. Kim, J.; Lee, J. Efficient Deadlock Detection in FMS Based on the Transitive Matrix of Resource Share Places. In Proceedings of the 23rd International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC 2008), Shimonoseki City, Japan, 6–9 July 2008; pp. 277–280. [Google Scholar]
  60. Kim, S.; Lee, S.; Lee, J. Deadlock Analysis of Petri Nets Based on the Resource Share Places Relationship. Stud. Inform. Control 2007, 16, 33–44. [Google Scholar] [CrossRef]
  61. Bashir, M.; Zhou, J.; Muhammad, B.B. Optimal Supervisory Control for Flexible Manufacturing Systems Model with Petri Nets: A Place-Transition Control. IEEE Access 2021, 9, 58566–58578. [Google Scholar] [CrossRef]
  62. Yamalidou, K.; Moody, J.; Lemmon, M.; Antsaklis, P. Feedback control of Petri nets based on place invariants. Automatica 1996, 32, 15–18. [Google Scholar] [CrossRef]
  63. You, D.; Guang, W.S.; Zhou, M.C. Computation of strict minimal siphons in a class of Petri nets based on problem decomposition. Inf. Sci. 2017, 409–410, 87–100. [Google Scholar] [CrossRef]
  64. 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] [CrossRef]
  65. Chao, Y.D. Revised dependent siphon. Int. J. Adv. Manuf. Technol. 2009, 43, 182–188. [Google Scholar] [CrossRef]
  66. Li, Z.W.; Uzam, M.; Zhou, M.C. Comments on “Deadlock Prevention Policy based on Petri Nets and Siphons”. Int. J. Prod. Res. 2004, 42, 5253–5254. [Google Scholar] [CrossRef]
  67. Hu, H.; Liu, Y.; Yuan, L. Supervisor Simplification in FMSs: Comparative Studies and New Results Using Petri Nets. IEEE Trans. Control Syst. Technol. 2016, 24, 81–95. [Google Scholar] [CrossRef]
  68. Wu, Y.; Xing, K.; Luo, J.; Feng, Y. Robust deadlock control for automated manufacturing systems with an unreliable resource. Inf. Sci. 2016, 346, 17–28. [Google Scholar] [CrossRef]
  69. Bashir, M.; Li, Z.; Uzam, M.; Wu, N.; Al-Ahmari, A. On structural reduction of liveness-enforcing Petri net supervisors for flexible manufacturing systems: An algebraic approach. IMA J. Math. Control Inf. 2018, 35, 1217–1249. [Google Scholar] [CrossRef]
  70. Cong, X.; Wang, A.; Chen, Y.; Wu, N.; Qu, T.; Khalgui, M.; Li, Z. Most permissive liveness-enforcing Petri net supervisors for discrete event systems via linear monitors. ISA Trans. 2019, 92, 145–154. [Google Scholar] [CrossRef] [PubMed]
  71. Li, Z.W.; Hu, H.S.; Wang, A.R. Design of Liveness-Enforcing Supervisors for Flexible Manufacturing Systems Using Petri Nets. IEEE Trans. Syst. Man-Cybern.-Part C Appl. Rev. 2007, 37, 517–526. [Google Scholar] [CrossRef]
  72. Wang, S.G.; Wang, C.Y.; Zhou, M.C.; Li, Z.W. A Method to Compute Strict Minimal Siphons in a Class of Petri Nets Based on Loop Resource Subsets. IEEE Trans. Syst. Mans Cybern.-Part A Syst. Hum. 2012, 42, 226–237. [Google Scholar] [CrossRef]
  73. Chen, Y. Optimal Supervisory Control of Flexible Manufacturing Systems. Ph.D. Thesis, Computer Science, Conservatoire National des Arts et Metiers–CNAM, École Doctorale Informatique, Télécommunications et Electronique de Paris, Paris, France, 2015. Available online: https://theses.hal.science/tel-01288919 (accessed on 29 July 2025).
  74. Liu, G. Supervisor Synthesis for Automated Manufacturing Systems Based on Structure Theory of Petri Net. Ph.D. Thesis, Automatic Control Engineering, Conservatoire National Des Arts et Metiers—CNAM, École Doctorale Informatique, Télécommunications et Electronique de Paris, Paris, France, 2014. (In English). [Google Scholar]
  75. Chao, D.Y. Improved Controllability Test for Dependent Siphons in S3PR Based on Elementary Siphons. Asian J. Control 2010, 12, 377–391. [Google Scholar] [CrossRef]
  76. Uzam, M.; Li, Z.W.; Abukubar, U.S. A General Approach for the Computation of a Liveness Enforcing Supervisor for the Petri Net Model of an FMS. In Proceedings of the 1st International Workshop on Petri Nets for Adaptive Discrete-Event Control Systems—ADECS 2014 (Co-Located with 35th International Conference on Application and Theory of Petri Nets and Concurrency (Petri Nets 2014), Tunis, Tunisia, 24 June 2014; Uzam, M., Li, Z.W., Abubakar, U.S., Eds.; University of Carthage: Carthage, Tunisia, 2014; pp. 1–15. [Google Scholar]
  77. Nasr, E.A.; Tamimi, A.M.; Al-Ahmari, S.; Kaid, H. Comparison and Evaluation of Deadlock Prevention Methods for Different Size Automated Manufacturing Systems. Math. Probl. Eng. 2015, 2015, 537893. [Google Scholar] [CrossRef]
  78. Wang, A.R.; Li, Z.W.; Jia, J.Y. A Petri nets based deadlock avoidance policy for flexible manufacturing systems. In Proceedings of the 30th Annual Conference of IEEE Industrial Electronics Society, IECON 2004, Chicago, IL, USA, 2–6 November 2004; Volume 2, pp. 1896–1901. [Google Scholar] [CrossRef]
  79. Li, Z.W.; Zhou, M.C. Clarifications on the Definitions of Elementary Siphons in Petri Nets. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 2006, 36, 1227–1229. [Google Scholar] [CrossRef]
  80. Liu, X.; Wang, A.; Li, Z. A Fast Algorithm to Find a Set of Elementary Siphons for a Class of Petri Nets. In Proceedings of the 2006 IEEE International Conference on Automation Science and Engineering, Shanghai, China, 7–10 October 2006; pp. 399–404. [Google Scholar] [CrossRef]
  81. Chao, D.Y.; Wu, K.-C.; Chen, J.-T.; Lee, M.Y.J. Controllability of Strongly and Weakly Dependent Siphons under Disturbanceless Control. Intell. Control Autom. 2011, 2, 310–319. [Google Scholar] [CrossRef]
  82. Kaid, H.; Al-Ahmari, A.; Li, Z.; Davidrajuh, R. Single Controller-Based Colored Petri Nets for Deadlock Control in Automated Manufacturing Systems. Processes 2020, 8, 21. [Google Scholar] [CrossRef]
  83. Barkaoui, K.; Pradat-Peyre, J.F. On Liveness and Controlled Siphons in Petri Nets. In Proceedings of the 17th International Conference on Applications and Theory of Petri Nets, Osaka, Japan, 24–28 June 1996; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 1996; Volume 1091, pp. 57–72. [Google Scholar] [CrossRef]
  84. Davidrajuh, R. Modeling Discrete-Event Systems with GPenSIM: An Introduction; Springer Briefs in Applied Sciences and Technology; Springer: Cham, Switzerland, 2018; 155p, ISBN 978-3-319-73102-5. Available online: https://link.springer.com/content/pdf/10.1007/978-3-319-73102-5 (accessed on 13 March 2025).
  85. Chao, D.Y.; Pan, Y.-L.; Liao, W.-H. Structure Based Derived Uniform Formula for Siphon, Its Complementary Set and T-characteristic Vectors. In Proceedings of the 7th IFAC Conference on Manufacturing Modelling, Management, and Control, Saint Petersburg, Russia, 19–21 June 2013; pp. 301–306. [Google Scholar] [CrossRef]
  86. Shih, Y.-Y.; Chao, D.Y. Sequence of Control in S3PMR. Comput. J. 2009, 53, 1691–1703. [Google Scholar] [CrossRef]
  87. Liu, G.Y.; Li, Z.W.; Al-Ahmari, A. Liveness Analysis of Petri Nets Using Siphons and Mathematical Programming. In Proceedings of the 12th IFAC/IEEE Workshop on Discrete Event Systems, Cachan, France, 14–16 May 2014; pp. 383–387. [Google Scholar] [CrossRef]
  88. Liu, G.Y.; Zhang, C.L.; Chang, L.; Al-Ahmari, A.; Wu, N.Q. Robust deadlock control for automated manufacturing systems based on elementary siphon theory. Inf. Sci. 2020, 510, 165–182. [Google Scholar] [CrossRef]
  89. Liu, G.; Barkaoui, K. Necessary and sufficient liveness condition of GS3PR Petri nets. Int. J. Syst. Sci. 2015, 46, 1147–1160. [Google Scholar] [CrossRef]
  90. Li, Z.W.; Uzam, M.; Zhou, M.C. Deadlock control of concurrent manufacturing processes sharing finite resources. Int. J. Adv. Manuf. Technol. 2008, 38, 787–800. [Google Scholar] [CrossRef]
  91. Barkaoui, L.; Couvreur, J.-M.; Klai, K. On the Equivalence Between Liveness and Deadlock-Freeness in Petri Nets. In Proceedings of the 26th International Conference, Applications and Theory of Petri Nets, ICATPN 2005, Miami, FL, USA, 20–25 June 2005; Lecture Notes in Computer Science. Ciardo, G., Darondeau, P., Eds.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3536, pp. 90–107. [Google Scholar] [CrossRef]
  92. Gu, C.; Ma, Z.; Li, Z. Liveness and deadlock-freeness verification and enforcement in bounded Petri nets using basis reachability graphs. Automatica 2024, 164, 111625. [Google Scholar] [CrossRef]
  93. Wang, S.; Duo, W.; Guo, X.; Jiang, X.; You, D.; Barkaoui, K.; Zhou, M.C. Computation of an Emptiable Minimal Siphon in a Subclass of Petri Nets Using Mixed-Integer Programming. IEEE/CAA J. Autom. Sin. 2021, 8, 219–226. [Google Scholar] [CrossRef]
Figure 1. An S 3 PR PN model of AMS (left) and its RT (right).
Figure 1. An S 3 PR PN model of AMS (left) and its RT (right).
Electronics 14 04889 g001
Figure 2. An S 3 PR PN model of AMS (left) and its supervisor (right).
Figure 2. An S 3 PR PN model of AMS (left) and its supervisor (right).
Electronics 14 04889 g002
Figure 3. The RT of the supervised system displayed in Figure 2. On the left, there is an RT corresponding to applying the supervisor consisting of V S 1 , V S 2 . It can be seen that node 4 represents a deadlock. On the right, there is an RT corresponding to applying the supervisor consisting of V S 1 , V S 2 , V S 3 . It can be seen that there is no deadlock (node 4 was eliminated), but the other RT parts are identical (as to the structure) with those in the RT on the left. Only the number of nodes is less by one node.
Figure 3. The RT of the supervised system displayed in Figure 2. On the left, there is an RT corresponding to applying the supervisor consisting of V S 1 , V S 2 . It can be seen that node 4 represents a deadlock. On the right, there is an RT corresponding to applying the supervisor consisting of V S 1 , V S 2 , V S 3 . It can be seen that there is no deadlock (node 4 was eliminated), but the other RT parts are identical (as to the structure) with those in the RT on the left. Only the number of nodes is less by one node.
Electronics 14 04889 g003
Figure 4. The supervisor computed by means of the procedure using complementary sets of siphons for the AMS model represented by N in Figure 2 (left) and the corresponding RT of the controlled system (right). It documents that there are no deadlocks in the controlled N; however, the RT does not have as many nodes as that in Example 1.
Figure 4. The supervisor computed by means of the procedure using complementary sets of siphons for the AMS model represented by N in Figure 2 (left) and the corresponding RT of the controlled system (right). It documents that there are no deadlocks in the controlled N; however, the RT does not have as many nodes as that in Example 1.
Electronics 14 04889 g004
Figure 5. The GPN N of the kind of ES 3 PR (left) and its supervisor synthesized by means of the procedure using complementary sets of siphons (right).
Figure 5. The GPN N of the kind of ES 3 PR (left) and its supervisor synthesized by means of the procedure using complementary sets of siphons (right).
Electronics 14 04889 g005
Figure 6. The RT of the controlled G P N in Figure 5. It documents that there are no deadlocks in the controlled N. The expansiveness of the tree documents the freedom of the controlled system behavior.
Figure 6. The RT of the controlled G P N in Figure 5. It documents that there are no deadlocks in the controlled N. The expansiveness of the tree documents the freedom of the controlled system behavior.
Electronics 14 04889 g006
Figure 7. The scheme of the more complex AMS.
Figure 7. The scheme of the more complex AMS.
Electronics 14 04889 g007
Figure 8. The PN model of the AMS schematically depicted in Figure 7.
Figure 8. The PN model of the AMS schematically depicted in Figure 7.
Electronics 14 04889 g008
Figure 9. The supervisor for the PN model in Figure 8. The directed arches show (1) from which PN transitions they come out (i.e., from the set V S i ) and then enter the V S i , i = 1 , 4 , 10 , 16 , 17 , 18 ; and (2) into which PN transitions they enter after coming out of the V S i (i.e., into the set V S i ), i = 1 , 4 , 10 , 16 , 17 , 18 .
Figure 9. The supervisor for the PN model in Figure 8. The directed arches show (1) from which PN transitions they come out (i.e., from the set V S i ) and then enter the V S i , i = 1 , 4 , 10 , 16 , 17 , 18 ; and (2) into which PN transitions they enter after coming out of the V S i (i.e., into the set V S i ), i = 1 , 4 , 10 , 16 , 17 , 18 .
Electronics 14 04889 g009
Figure 10. The PN model of the AMS by S 4 PR net.
Figure 10. The PN model of the AMS by S 4 PR net.
Electronics 14 04889 g010
Figure 11. The supervisor of the AMS S 4 PR.
Figure 11. The supervisor of the AMS S 4 PR.
Electronics 14 04889 g011
Table 1. Siphons and traps.
Table 1. Siphons and traps.
SiphonsTraps
S 1 * = { p 4 , p 6 , p 11 } = Q 1 Q 1 = { p 4 , p 6 , p 11 }
S 2 * = { p 3 , p 7 , p 10 } = Q 2 Q 2 = { p 3 , p 7 , p 10 }
S 3 * = { p 2 , p 8 , p 9 } = Q 3 Q 3 = { p 2 , p 8 , p 9 }
S 4 * = { p 1 , p 2 , p 3 , p 4 } = Q 4 Q 4 = { p 1 , p 2 , p 3 , p 4 }
S 5 = { p 4 , p 7 , p 10 , p 11 } Q 5 = { p 3 , p 6 , p 10 , p 11 }
S 6 = { p 3 , p 8 , p 9 , p 10 } Q 6 = { p 2 , p 7 , p 9 , p 10 }
S 7 * = { p 5 , p 6 , p 7 , p 8 } = Q 7 Q 7 = { p 5 , p 6 , p 7 , p 8 }
S 8 = { p 4 , p 8 , p 9 , p 10 , p 11 } Q 8 = { p 2 , p 6 , p 9 , p 10 , p 11 }
Table 2. Transitions taking away the tokens from siphons.
Table 2. Transitions taking away the tokens from siphons.
Siphon(s) S 1 S 2 S 1 , S 3 S 2 , S 3 S 3
Transition t 2 t 6 t 5 t 1 t 5
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

Čapkovič, F. Siphon-Based Deadlock Prevention of Complex Automated Manufacturing Systems Using Generalized Petri Nets. Electronics 2025, 14, 4889. https://doi.org/10.3390/electronics14244889

AMA Style

Čapkovič F. Siphon-Based Deadlock Prevention of Complex Automated Manufacturing Systems Using Generalized Petri Nets. Electronics. 2025; 14(24):4889. https://doi.org/10.3390/electronics14244889

Chicago/Turabian Style

Čapkovič, František. 2025. "Siphon-Based Deadlock Prevention of Complex Automated Manufacturing Systems Using Generalized Petri Nets" Electronics 14, no. 24: 4889. https://doi.org/10.3390/electronics14244889

APA Style

Čapkovič, F. (2025). Siphon-Based Deadlock Prevention of Complex Automated Manufacturing Systems Using Generalized Petri Nets. Electronics, 14(24), 4889. https://doi.org/10.3390/electronics14244889

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