Abstract
Deadlocks should be eliminated in highly automated manufacturing systems since their occurrence implies the stoppage of the whole or partial system operation. Over the past decades, Petri nets are increasingly becoming one of the most popular and full-fledged mathematical tools to deal with deadlock problems due to their inherent characteristics. In a Petri net formalism, liveness is an important property of system safeness, which implies the absence of global and local deadlock situations in an automated manufacturing system. The liveness assessment can be performed by verifying the satisfiability of certain predicates on siphons, a well-known structural object in Petri nets. Therefore, siphons have received much attention to analyze and control systems modeled with Petri nets. Particularly, elementary siphon theory plays a key role in the development of structurally simple liveness-enforcing Petri net supervisors, leading to a variety of deadlock control approaches. This survey studies on the state-of-the-art elementary siphon theory of Petri nets including refined concepts of elementary siphons and their extended version, computation methods of siphons and elementary ones, controllability conditions, and their application to deadlock control. As a reference, this work attempts to provide a comprehensive and updated research survey on siphons, elementary siphons, and their applications to the deadlock resolution in Petri nets.
Introduction
An automated manufacturing system (AMS)1,2 is a system consisting of a set of interconnected stations for material processing that is capable of automatically processing a wide variety of types of pieces simultaneously and controlled by computers. An AMS has characteristics of high degree of automation, high degree of integration, and high degree of flexibility. The flexibility means that a system can swiftly adjust the production volume, the process routing, and the product quality. AMSs offer flexibility and efficiency far beyond traditional material handling requirements. The development of AMSs can trace to the later half of the 20th century, and this manufacturing technique is used in facilities of varying scale all over the world.
Nowadays, information technology is extensively applied to contemporary AMSs, which renders that modern AMSs are becoming software-intensive systems. The reliability, safety, and other miscellaneous requirements of a system are satisfied by control software. Deadlock problems in AMSs3–17,320,326 have received increasing attention from both industry and academy since deadlocks can not only cause a partial or whole stoppage in a system, but also bring about catastrophic consequences in highly automated systems. The occurrences of deadlocks18–21 often deteriorate the allocation of resources and may give rise to serious economy loss in highly AMSs.
Petri nets22–47,313,321–324,329 can be used in all stages starting from modeling to control implementation. And both plant and supervisor models can be unified in the formalism of Petri nets. This feature can greatly facilitate modeling, open-loop system analysis and synthesis, control implementation, and closed-loop system analysis and evaluation. On one hand, computation related to Petri net models can be inexpensive by fully utilizing their structural information. On the other hand, a set of systematic mathematical analysis approaches has been developed for studying Petri nets that promotes their popularity, which includes reachability analysis as well as structure-based linear algebraic methods. Actually, Petri nets have attracted much interest over the past decades to cope with deadlock issues, leading to a deluge of deadlock control strategies.48–117,312,314,325
At present, deadlock resolution methods in AMSs modeled with Petri nets are mainly classified into three strategies: deadlock detection and recovery, deadlock avoidance, and deadlock prevention. Many achievements have been made among these strategies in the literature. Deadlock detection and recovery17,55,118–121,311,317,327 uses an online mechanism. When a deadlock occurs, it is detected and then the system is put back to a deadlock-free state. Deadlock avoidance4,11,12,15,48,53,54,56,57,73,106,107,109,122–136,319 is a resources allocation mechanism, behind which an online control policy is used to make a correct decision to proceed among the feasible evolutions. Deadlock prevention6,49,71,72,75,77,82,91,95–98,103,111,137–146,308–310,315,328 is usually achieved using an off-line computational mechanism to control the request for resources to ensure that deadlocks never occur. Furthermore, it is worth mentioning that Petri nets have been extensively applied to the problems of scheduling,147–150 reconfiguration,151,152 and other applications.153–171
Motivated by the established Petri net analysis techniques, deadlock prevention is usually developed by utilizing two major techniques, reachability analysis172–183 and structural analysis methods.131,184–205,316,318 There are three important criteria in evaluating the performance of a liveness-enforcing supervisor for a system to be controlled: behavioral permissiveness, structural complexity, and computational complexity. Determining how to design a maximally permissive Petri net supervisor is always a significant problem. Owing to the fact that a reachability graph can fully reflect the behavior of a Petri net system, reachability graph-based policies100,101,206–214 can always obtain a highly or even maximally permissive liveness-enforcing supervisor. However, the computation is very expensive.
One of the most interesting past developments is the use of some structural objects to derive liveness-enforcing supervisors for Petri nets modeling AMSs. As a major structural object, siphons are closely related to deadlocks. In a Petri net, in case that a siphon is emptied or insufficiently marked, all its related transitions can never be enabled, which indicates the permanent blocking of part or all processes in the net system. Siphons are extensively utilized in the analysis and control of deadlocks in AMSs modeled by Petri nets, leading to a large number of siphon-based deadlock control strategies. However, the power of the siphon-based liveness-enforcing approaches is degraded and deteriorated by the fact that the number of strict minimal siphons (SMSs) in a Petri net grows quickly beyond practical limits and often grows exponentially with respect to the net size. They suffer from the computational complexity problem due to the fact that, generally, a complete siphon enumeration in a Petri net is non-deterministic polynomial (NP)-complete. Furthermore, they usually cause liveness-enforcing Petri net supervisors with more complicated structure than the plant net model that is originally built.
In order to cope with above problems, elementary siphon theory is developed by Li and Zhou.215,216 SMSs in a Petri net model can be categorized into elementary siphons and dependent ones. The latter can be further distinguished by strongly and weakly dependent siphons. The upper bound of the elementary siphons in a net is no greater than the smaller one of place and transition counts. They prove that in some cases, by designing a monitor for each elementary siphon to make it controlled, deadlock can be successfully prevented. A dependent siphon can be implicitly controlled by properly arranging the number of tokens that can stay at its elementary siphons. The results mentioned above have widely applied to a variety of elementary siphon–related deadlock control approaches139,217–233 in the literature. This article mainly aims to reveal, first, how the elementary siphon theory of Petri nets can be used to troubleshoot deadlock problems, and second, how the refined concept of elementary siphons in a Petri net improves the existing deadlock control policies.
The rest of this article is organized as follows. In section “Siphons and controllability conditions,” siphons and their controllability conditions are presented. Section “Elementary siphon theory” expounds the elementary siphon theory in detail, including the concepts of elementary siphons and augmented ones, as well as their controllability conditions. Section “Computation of siphons and elementary siphons” surveys the computation methods of siphons and elementary siphons. The wide applications of siphon-based deadlock control approaches, a complete or partial siphon enumeration, elementary siphons, and related combined techniques are reviewed in section “Siphon-based deadlock control policies.” Section “Concluding remarks” concludes this article.
Siphons and controllability conditions
Siphons and traps
As a structural object of Petri nets, siphons play a significant role in the analysis of their behavioral properties, particularly liveness. Some major definitions and properties are reviewed first, and more details can be found in the works by Li and Zhou 31 and Murata. 34 Basic definitions and notations can be found in Appendix 1.
Definition 1
A nonempty place set
Property 1
Let
Corollary 1
If I is a P-semiflow, then
Note that, since a P-invariant depends on both the topological structure of a net and the arcs weights, the converse of Corollary 1 is not true. However, a siphon or trap is only related with the topological structure. Corollary 1 indicates that a siphon can never be emptied if it contains the support of a P-semiflow and the support is initially marked.
Example 1
Take the net shown in Figure 1 as an example. It has four siphons

A Petri net
Property 2
Let
Property 3
Let
These two properties indicate that once a siphon is emptied, it remains unmarked at any subsequent markings that are reachable from the current marking, and once a trap is marked at a marking, it is always marked at the subsequent markings. An empty siphon S means that
Controllability conditions of siphons
The controllability concept of a Petri net can be found in the works by Murata 34 and Barkaoui and Pradat-Peyre. 234 A net is said to be completely controllable if any marking is reachable from any other marking. 34 In an ordinary Petri net, a siphon is said to be controlled if it cannot be unmarked at any reachable marking.31,235 If a Petri net is generalized, owing to the weights of arcs, the non-emptiness of a siphon is not sufficient for the absence of dead transitions, and the controllability of a siphon is much more complex. This part reviews the controllability of siphons in the literature.
Ordinary Petri nets
Theorem 1
Let
Theorem 2
Let
Theorem 1 means that if no (minimal) siphon eventually becomes empty, an ordinary Petri net is deadlock-free. Theorem 2 implies that if an ordinary net is dead, then all unmarked places form a siphon.
Corollary 2
A deadlocked ordinary Petri net contains at least one empty siphon.31,234
Definition 2
A siphon S is said to be controlled in an ordinary Petri net system
Definition 3
Siphon S in an ordinary net system
At an initial marking
Generalized Petri nets
An empty siphon in an ordinary net can cause some transitions to be disabled forever. The case in a generalized Petri net is much more complicated. Owing to the weighted arcs, an insufficiently marked siphon leads to the occurrence of deadlocks.
Corollary 3
Let
On the whole, the controllability concept is concerned with the enabling and firing of transitions connected with the considered siphons.
Max-controlled conditions
Barkaoui and colleagues234,236 first propose the concepts of max-controlled siphons and cs-property (controlled-siphon property) for Petri nets. Barkaoui et al. 237 conclude that an asymmetric choice net with homogeneous valuation is live if it satisfies the cs-property. A marked S4PR net is live if it satisfies the cs-property, which means that the cs-property is a sufficient but not necessary condition for the liveness of an S4R.31,238
Definition 4
Let
Definition 5
A siphon is said to be max-controlled if it is max-marked at any reachable marking. 234
Definition 6
Property 4
If
Property 5
If
A siphon satisfying the max-controlled property means that it can be always marked sufficiently to allow firing a transition associated with the siphon once at least. A Petri net is deadlock-free if it satisfies the cs-property.
Proposition 1
Let
Example 2
For the generalized net in Figure 2(a), it has two P-invariants

(a) A Petri net
Barkaoui et al. 237 propose a more important result about the equivalence between liveness and cs-property in an ordered P/T system. Ordered P/T systems (not necessarily bounded) include a number of subclasses of Petri nets, such as asymmetric choice (AC) systems, 234 Join Free (JF) systems, Equal Conflict (EC) systems, 239 and Extended Free Choice (EFC) nets.
Theorem 3
Let
Max′- controlled conditions
The max′-controlled condition of siphons is first proposed by Chao 238 in S4PR for the sake of reducing the restriction of the max-controlled condition. Zhong and Li 240 refine this concept and develop a formal definition of self-max′-controlled conditions for WS3PR. They conclude that a WS3PR is live if each SMS is self-max′-controlled. Motivated by the work of Chao, 238 Hou et al. 222 propose the formal definitions of max′-controlled conditions for S4PR. The following results are mainly from the works by Chao 238 and Hou et al. 222
Let
Definition 7
Let
Definition 8
Let S be a siphon of a well-initially-marked S4PR
Definition 9
Let S be a siphon of a well-initially-marked S4PR
Theorem 4
Let
Example 3
In the net shown in Figure 3, S is an SMS with

An S4PR
Max″-controlled conditions
Liu et al. 201 present the max″-controllability condition of siphons to relax the max′-controllability condition.
Definition 10
Let S be a siphon in a well-marked S4PR
M is an initial marking;
Definition 11
Let S be a siphon in a well-marked S4PR
Theorem 5
Let
-controlled conditions
Liu and Barkaoui
241
present the
Definition 12
Let S be a strict siphon in a well-marked GS3PR net
Theorem 6
Let
W-controlled conditions
A sufficient and necessary siphon (NS) controllability condition named W-control is developed by Guan et al., 242 under which the liveness and maximal permissiveness of a WS3PR can be ensured if all its siphons are W-controlled.
Definition 13
Let S be a siphon in a marked WS3PR
Definition 14
Let S be a siphon in a marked WS3PR
Theorem 7
Let
Note that max-controllability,
234
max′-controllability,222,238 and max″-controllability
201
can be utilized in S4PR, and all of them are sufficient but not necessary conditions.
Elementary siphon theory
Elementary siphons
The theory of elementary siphons is proposed by Li and Zhou, 215 which is essential to the development of a structurally simple monitor-based liveness-enforcing supervisor and has been applied in designing live controlled systems for S3PR 235 extensively. It is shown that a dependent siphon can be implicitly controlled by properly supervising the number of tokens staying in its elementary siphons. By explicitly controlling elementary siphons via monitors, a liveness-enforcing controlled system can be found. The following definitions are from the work by Li and Zhou. 215
Elementary and dependent siphons
Definition 15
Let
Definition 16
Let
Definition 17
Let
Theorem 8
The result indicates that the number of elementary siphons in a Petri net is no more than the smaller of place and transition counts. Let
Example 4
The Petri net shown in the left of Figure 4 has three SMSs:

A generalized Petri net
It can be verified that
Controllability of dependent siphons
Li and Zhou
215
provide the conditions under which a dependent siphon can be always marked if their elementary ones are properly controlled. The following results are useful in designing of structurally simple liveness-enforcing supervisors for a Petri net model. In the following theorems and corollaries, let
Theorem 9
A weakly dependent siphon S is controlled if 215
Corollary 4
A strongly dependent siphon S is controlled if 215
Lemma 1
Let S be a siphon in net
Theorem 10
A strongly dependent siphon S is max-controlled if
Theorem 11
A weakly dependent siphon S is max-controlled if
From Definition 7, a well-initially-marked Petri net indicates that at the initial marking, a siphon has the maximal number of tokens. The controllability conditions of strongly and dependent siphons can be unified to one condition shown as follows.
Corollary 5
A dependent siphon S in a well-initially-marked net
Example 5
From Example 1,
Augmented elementary siphons in generalized Petri nets
Based on the elementary siphons, a variety of deadlock control policies216,229–231,243–246 are developed for synthesizing liveness-enforcement supervisors. However, in generalized Petri nets, multiple resource requirements should be considered sufficiently in identifying a set of elementary siphons. Elementary siphons are further developed for generalized Petri nets.222–224,226
Augmented elementary siphons in WS3PR
Augmented elementary siphons
The augmented siphon and augmented complementary set of a siphon are defined in the work by Hou et al. 224 for WS3PR and then elementary siphons are redefined. The relationship between augmented siphons and their augmented complementary sets is also investigated by fully considering the weights information.
Definition 18
Let S be a siphon in a WS3PR
Definition 18 indicates that a siphon S and its augmented version
Definition 19
Let S be a siphon in a WS3PR
Definition 20
Let
Let
Example 6
A WS3PR is shown in Figure 5. It has three SMSs:

A WS3PR N.
We have
Definition 21
Let
Lemma 2
Let
In Figure 5,
Theorem 12
Let S be a dependent siphon in N.
Controllability of augmented dependent siphons
In a WS3PR, all SMSs are divided into the sets of augmented elementary and augmented dependent ones. The condition in Corollary 5 is still valid, under which an augmented dependent siphon can be always max-marked if their augmented elementary ones are properly controlled.
Augmented elementary siphons in GLS3PR
Elementary siphon theory is further improved by Hou et al. 223 for a class of generalized Petri nets, namely, GLS3PR that is more general than WS3PR. The following results are from the work by Hou et al. 223
Augmented elementary siphons
By fully investigating the net structure, especially weights information, the set of elementary siphons obtained by the improved method is more compact and well suits for GLS3PR.
Definition 22
Let
Definition 23
Let
Definition 24
Let S be a siphon in a GLS3PR
Definition 25
Let S be a siphon in a GLS3PR N. P-vector
Definition 26
Let
Let
Elementary and dependent siphons defined in Definition 17 are originally proposed and further clarified in the work by Li and Zhou.215,216 In order to differentiate from the augmented elementary ones, elementary (resp. dependent) siphons obtained by Definition 17 are called the original elementary siphons, denoted as
Definition 27
Let
Property 6
Let
Theorem 13
Let
Definition 28
Let
Lemma 3
Let
Theorem 14
Let S be an augmented dependent siphon in N.
Example 7
The net in Figure 6 is a GLS3PR with three SMSs

A GLS3PR
One can obtain
Hence, we have
It can be verified that
By Definitions 17, we have
Hence
Then,
By Definition 28,
Controllability of dependent siphons
In the work by Hou et al., 223 the elementary (resp. dependent) siphons consist of original and augmented parts. Obviously, the condition in Corollary 5 holds for all original dependent siphons. Moreover, it is proved that the condition in Corollary 5 is also applicable to augmented dependent siphons. The controllability of improved dependent siphons obtained by Definition 27 can be ensured by properly supervising their elementary siphons in GLS3PR nets.
Augmented elementary siphons in S4PR
Motivated by the purpose of improving the concept of elementary siphons for finding a set of more compact and suitable elementary siphons in an S4PR, the augmented siphons in an S4PR are further studied in the work by Hou et al. 222 by fully investigating the topological structure and arc weights. The improved elementary and dependent siphons are given subsequently. The following results are from the work by Hou et al. 222
Augmented elementary siphons
Definition 29
Let
Definition 30
Let S be a siphon in an S4PR
Definition 31
Let
Definition 32
Let
Definition 33
Let
Definition 34
Let
Let
Definition 35
Lemma 4
Let
Theorem 15
Let
Example 8
The net in Figure 7 is an S4PR. It has seven SMSs:

An S4PR model
We have
Accordingly, the corresponding
It is verified that
Controllability of dependent siphons
In order to improve the behavioral permissiveness of a liveness-enforcing supervisor, the max′-controlled siphon condition222,238 is introduced. The controllability conditions of dependent siphons are developed by Hou et al., 222 under which a dependent siphon can be max′-controlled if their elementary ones are max′-controlled.
Lemma 5
Let S be a siphon in an S4PR
Theorem 16
An augmented dependent siphon S in an S4PR is max′-controlled if
Corollary 6
A dependent siphon S in a well-initially-marked S4PR
Corollary 7
Let
Example 9
For the net shown in Figure 7, take
For dependant siphon
Computation of siphons and elementary siphons
Siphons computation
Siphons can be used to characterize deadlock states and solve deadlock problems in Petri nets. Siphon-based deadlock prevention control policies need the set of minimal siphons to be computed. Hence, a lot of studies have been devoted to siphons extraction, especially SMSs.
The work by Abdallah et al.
247
is usually considered as an earlier and seminal research to compute minimal siphons in an ordinary Petri net. For an S3PR, an efficient algorithm for finding minimal siphons based on a logic programming approach is established. Suffering from the fact that the number of siphons grows quickly with the size of a net, the computation is usually time-consuming. To address the minimal siphon enumeration problem, an iterative method is proposed by Cordone et al.
248
based on a partitioning strategy, with additional place constraints. The method is claimed to be rather efficient, which can find
Chu and Xie 249 present a deadlock detection method by solving a mixed integer programming (MIP) problem, which can effectively avoid a complete siphon enumeration. It opens a new avenue for improving the computational efficiency of siphon-based deadlock prevention policies in large-scale systems. Huang et al. 250 and Li et al. investigate methods for extracting minimal siphons from a maximal unmarked siphon that can be derived by an MIP method. A software package that can achieve the method is developed by Liu et al. 197 Similar works on minimal siphon extraction based on the MIP method are reported by Li et al. 251 and Li and Li. 228 To eliminate the minimal siphon extraction step, the work by Chao 252 proposes a revised MIP method to directly compute unmarked siphons with a minimal number of places.
An algorithm with polynomial complexity is proposed by Barkaoui and Lemaire 184 to decide whether a set of places is a minimal siphon. A series of classic and typical siphon computation methods are presented in the works by Barkaoui et al., 253 Ezpeleta et al., 254 Lautenbach, 255 Wang et al., 256 and Yamauchi and Watanabe. 257
Binary decision diagrams (BDD) have the capability of representing large sets of data with small shared data structures. Chen and Liu 258 present a symbolic approach to find minimal siphons of Petri nets using BDD. Formally representing all siphons by a Boolean function, minimal siphons are identified from all the siphons using BDD. The authors concluded that the computation of finding all siphons is efficient; however, identifying minimal siphons is time-consuming.
Tricas and Ezpeleta 259 show how the special syntactical constraints of S4PR can help in developing specific implementations to compute siphons in a very efficient way. A parallel solution to compute siphons is established by Tricas and Ezpeleta. 260 Boer and Murata 261 introduced a sign incidence matrix which can be used as a new approach to structural analysis of Petri nets. The presented algorithm can find basis siphons. The place-minimal siphons play a central role in the algorithm.
Resource-transition circuits can be used to characterize deadlocks. 262 The relationship between siphons and maximal perfect resource-transition circuits is explored by Xing et al. 136 An algorithm for computing all SMSs is proposed by Wang et al. 263 based on resource circuits in S3PR. In this work, the concepts of loop resource subsets and their characteristic resource subnets are proposed, and sufficient and necessary conditions for loop resource subsets to generate SMS are established. However, the method needs to generate all the characteristic resource subnets and strong connectivity of each characteristic resource subnet, which makes the method tedious. The work by Liu et al. 264 improves the method in the work by Wang et al. 263 by introducing critical resource places and their related multi-way holder places, from which whether a loop resource subset can derive an SMS can be decided directly.
Chao made much work in the computation of minimal and elementary siphons in resources allocation systems (RASs). By the concept of handles and bridges, 265 Chao 266 proposed a computational approach of minimal siphons. The work by Chao 252 develops an MIP-based siphon computation method. For an RAS that can be decomposed into a number of synchronized choice nets interconnected by resource places, an efficient approach of extracting SMSs in an incremental fashion rather than the traditional global is investigated by Chao. 267
Elementary siphons computation
Computation of elementary siphons proposed by Li et al. 268 is essential for deadlock control; however, it is expensive since a complete siphon enumeration is needed. They assume that the siphon constructed from each resource circuit is elementary and proposed a polynomial algorithm to compute elementary siphons. The work by Chao 219 develops a polynomial algorithm to find elementary siphons, which also constructs all SMSs on the way. The reason is that in the method proposed by Li and Zhou, 269 a linear algebraic expression must be established for each dependent siphon, which implies that all SMSs must be located. However, all elementary siphons with polynomial complexity can be located.
Chao
217
presents the T-characteristic vector
Based on graph theory, Wang et al. 233 propose a polynomial complexity algorithm to find a set of elementary siphons for a linear system of simple sequential processes with resources (LS3PR). The algorithm is established through the use of a resource directed graph and complementary sets of SMSs. The upper bound of the SMSs is identified. By considering the arc weights information and multiple resources utilization, Hou et al. further investigate the graph theory–based elementary siphon computation method for generalized Petri nets, WS3PR and GLS3PR. Initial resource weighted digraphs and restricted subgraphs are proposed for WS3PR and GLS3PR, respectively, from which all SMSs and elementary siphons can be derived. The related works can be found in the studies by Hou et al.223,224
Li et al. 270 propose an iterative algorithm to extract a set of elementary siphons in S3PR. By an MIP method, the algorithm finds a maximal unmarked siphon at each iteration, classifies the places in it, extracts an elementary siphon from the classified places, and adds a new constraint in order to extract the next elementary siphon. The algorithm iteratively executes until no new unmarked siphons can be found. A unique set of elementary siphons is obtained finally, and a complete siphon enumeration is avoided.
The work by Liu et al. 271 establishes a polynomial-time complexity algorithm for enumerating elementary siphons in a subclass of Petri nets, basic systems of simple sequential processes with resources (BS3PR), with polynomial-time complexity. By combining a graph-based technique, elementary RTCs are computed initially, from which MPCs can be derived. Then, a subset of SMSs is obtained from a subset of MPCs by the one-to-one relationship between MPCs and SMSs. A maximal set of linear independent rows of the characteristic T-vector matrix of the obtained subset of SMSs is computed by the Gauss elimination method, which corresponds to a set of elementary siphons. Some similar works can be found in the study by Wang et al. 272 for a linear simple sequential process with resources.
Siphon-based deadlock control policies
As a significant structural object, siphons are extensively employed to implement a large number of deadlock control methods for AMS modeled by Petri nets. This section mainly reviews siphon-based deadlock control methods in terms of siphon enumeration, elementary siphon theory, and other combined analysis techniques.
Complete siphon enumeration
As for the structural analysis techniques of Petri nets to prevent deadlocks in AMS, the seminal work conducted by Ezpeleta et al. 235 is usually considered to be a classical contribution to develop the monitor-based liveness-enforcing supervisors for Petri nets. By considering a class of ordinary Petri nets, namely, S3PR nets, the relationship between SMSs and the liveness is revealed. For each unmarked SMS, a monitor is added such that it can be controlled, while all output arcs of additional monitors should point to the source transitions of the net model. After all siphons are controlled, it can be verified that the net system is live. The major advantage of this approach is that a plant net model and its supervisor are successfully separated. However, it also suffers from the issues of structural complexity, behavioral permissiveness, and computational complexity. As is well known, the number of SMSs grows exponentially with respect to the size of a net model in the worst case. From this method, the number of additional monitors is equal to that of all SMSs since every unmarked SMS needs a monitor to prevent from being emptied, resulting in high structural complexity. Second, the permissive behavior of the controlled system is overly restricted since all output arcs are directed to the source transitions. The computational complexity stems from the complete siphon enumeration. The following years after 1995 have seen that a great deal of attention is focused on the aforementioned problems.
As is gradually recognized, the limited behavioral permissiveness flaws the notable deadlock prevention policy in the work by Ezpeleta et al. 235 Based on the concepts of perfect-resource-transition circuits (PRT-circuits) and their saturated states, Xing and Hu 262 successfully develop a liveness-enforcing Petri net supervisor for S3PR with maximally permissive behavior and a minimized number of additional monitors. Since a saturated PRT-circuit of the S3PR net implies the existence of circular wait that is tied to deadlock states, the liveness condition in the work by Xing and Hu 262 is characterized by the fact that no PRT-circuit can reach a saturated state at any reachable marking of the system.
Starting from PRT-circuits, elementary maximal PRT-circuits are defined by Xing et al. 273 Accordingly, all elementary RTCs and their maximal PRT-circuits are recursively constructed using the graph theory. It is worth noting that the RTC and siphons are two different structural objects of Petri nets. The work by Xing et al. 273 establishes two kinds of deadlock control methods by computing all maximal PRT-circuits and SMSs. Furthermore, a one-to-one correspondence between SMS and maximal PRT-circuits and equivalence relation between two deadlock control methods are presented.
Siphon-based deadlock control often suffers from reaching fewer states than the maximally permissive one. Chao and Liu 274 report an alternative control to reach the same good states as that based on the theory of regions, but with fewer monitors, by refining some monitors into several monitors with smaller controller regions. More states can be reached since the controller region is less disturbed by covering only a place in a subregion where only one place is marked at any reachable marking. Subsequently, Chao et al.275,276 propose a new approach that recovers the system from empty-siphon states to its former live states. The significance of this approach lies in the fact that the same number of states as the original uncontrolled model can be reached and yet using fewer monitors. Unfortunately, those methods suffer from material loss by aborting some operations.
A monitor-based liveness-enforcing Petri net supervisor derived from siphons has suffered from high structural complexity when the number of siphons is large. To obtain a small-sized Petri net controller, Liu et al., 277 pioneer in the concept of a controllable siphon basis, proposed a new criterion for selecting a proper subset of siphons for control. By utilizing a controllable siphon basis, a novel deadlock prevention policy is developed such that a liveness-enforcing supervisor is derived after adding a monitor to each SMS in a controllable siphon basis. It is shown that the number of additional monitors is the same as that of SMSs in the controllable siphon basis, while the latter is no more than that of the operation places in an original Petri net. In the work by Liu et al., 277 it proves that there is no relationship between a controllable siphon basis and a set of elementary siphons. That is to say, the controllable siphon basis and a set of elementary siphons are totally different subsets of SMS in an S3PR.
Partial siphon enumeration
Due to the inherent characteristics of Petri nets, the computational complexity has been a major problem when siphon-based deadlock prevention policies are developed. An efficient way of improving the computational efficiency of a siphon-based deadlock prevention policy is the introduction of the MIP-based deadlock detection method pioneered by Chu and Xie, 249 which can successfully avoid the explicit enumeration of all SMSs and open a new research avenue.
Based on this method, Huang et al. 250 first propose an iterative two-stage deadlock prevention policy for an S3PR. The first stage is called siphon control, where a maximal unmarked siphon is obtained by solving an MIP problem at each iteration, from which an SMS can be derived. A monitor is added for each SMS to ensure its controllability using the invariant-controlled method as done by Ezpeleta et al. 235 The aforementioned steps are iteratively executed until all siphons in the net are controlled. Then, the first stage terminates, whose termination leads to an augmented net system. At the second stage, namely, control-induced siphon control, the MIP-based deadlock detection method is further applied to the augmented net. After solving an MIP problem, a minimal siphon that contains at least one monitor is found. Then, additional monitors can ensure the controllability of siphons. Note that any output arc of the monitors added in the second stage should point to the source transition of the net model. Similarly, the step is repeated until no unmarked siphon can be found, implying that liveness is achieved. To some extent, this approach enjoys high computational efficiency compared with the existing ones in the literature at that time.
The two-stage method 250 is further improved by Hong et al. 278 by introducing an additional algorithm for removing the redundant constraints. The policy improves the behavioral permissiveness and greatly enhances the structural simplicity of a supervisor. Later, the MIP-based idea is applied to S4PR 279 and G-system 280 that are more general classes of Petri nets than S3PR.
The MIP-based deadlock detection method is then used by Huang et al.141,281 Huang et al. 281 further extend the MIP method to propose an iterative siphon-based control policy for S3PMR nets. Two kinds of control places, called ordinary control (OC) places and weighted control (WC) places, are added to the original system to prevent siphons from becoming unmarked. 281 Note that the presence of WC places renders that the net is a generalized one, which is harder to analyze, and it is unclear how the traditional MIP is modified. Furthermore, the major technical problem in the work by Huang et al. 281 is the existence of redundant siphons. As a matter of fact, the work by Shih and Chao 282 can be considered as an improvement in the iterative MIP method, which presents a theory to determine the sequence of adding monitors to avoid redundant monitors and the conditions where WC places are redundant.
Li et al.251,283 propose the iterative siphon-based control policies by utilizing the MIP and the new concept of necessary siphons (NSs). Since those deadlock prevention policies make each NS that contains the minimal number of resource places explicitly controlled in the iteration, while other siphons that have more resource places are implicitly controlled, the liveness-enforcing supervisors with a simple structure can be usually obtained.
To avoid the addition of the corresponding monitors, the redundant test of NSs is further carried out under a certain condition. 283 Based on MIP and the concept of implicit places (IPs), Li and Li 284 develop a novel iterative algorithm for simplifying the structural complexity for a live Petri net. Under the condition that liveness is preserved, necessary and redundant monitors can be identified stepwise when computing a feasible solution of an MIP at each iteration. The former and the latter are then kept in or removed from the live controlled system, respectively. As a result, a live Petri net with a simpler structure is obtained.
Li and Li 228 proposed a revised mixed integer programming (RMIP) method to directly solve siphons with the minimal cardinality as well as the minimal number of resource places, called smart siphons. Based on this, an iterative siphon-based control method adopting the proposed RMIP is designed to eliminate deadlocks in Petri net models. Since the solved smart siphons contain the minimal number of resource places, this approach may reduce the possibility of adding redundant monitors to some degree, leading to a liveness-enforcing supervisor with a simple structure. Later, Li et al. 285 extend the RMIP method to directly solve new smart siphons (NSSs) associated with deadlocks and livelocks in Petri net models. Consequently, deadlocks and livelocks can be eliminated when all NSSs are max′-controlled and no smart siphons can be found.
Elementary siphon–based approaches
As mentioned previously, the policy in the work by Ezpeleta et al. 235 suffers from the issue of structural complexity since the method needs to design additional monitors for all SMSs. When considering a large-scale net system, too many monitors are added such that the resulting supervisor is structurally complex in theory. If any difference or relationship among SMSs can be deeply revealed, the structural complexity may be effectively alleviated. This problem has remained open for many years until the elementary siphon theory came into being.
The concept of elementary and redundant siphons is first proposed by Li and Zhou, 215 while the latter are subsequently renamed as dependent siphons. 216 From the deadlock control policy by Li and Zhou, 215 all problematic siphons in an S3PR are classified into elementary and dependent siphons. The latter are further separated into weakly and strongly dependent ones by identifying whether the coefficients of linear combination are all positive or not. It is shown that the number of the elementary siphons in a net is no greater than the smaller of place and transition counts. Moreover, a dependent siphon can be controlled by properly supervising its related elementary siphons. For deadlock prevention, strategies that control requirements are achieved by adding monitors; it is of significance that dependent siphons can be implicitly controlled via explicit controlling their elementary siphons by adding monitors and properly arranging the tokens in the monitors. In general cases, the policy by Li and Zhou 215 can lead to a structurally simple liveness-enforcing supervisor.
From the policy by Li and Zhou, 215 the controllability of a dependent siphon is investigated according to the elementary siphons that are invariantly controlled. In the work by Li and Zhou, 230 a dependent siphon controllability condition is developed, which is more general than that in the work by Li and Zhou. 215 Li and Zhao extend such a result to a class of generalized nets in the work by Li and Zhao 243 on the basis of the max-controlled condition of siphons. 234 However, it suffers from the computational complexity and behavioral permissiveness issues as in this 243 policy since the computation of elementary siphons relies on a complete siphon enumeration.
The work by Li et al. 286 aims to tackle the issues on the computational complexity and restricted behavior in the work by Li and Zhou. 215 The MIP-based deadlock detection method is first applied to derive a maximal unmarked siphon on condition that the plant model itself is not live, from which an SMS is computed. If it is an elementary siphon, then a monitor is added such that it is controlled. If it is dependent with respect to the elementary siphons that are already found, its controllability is ensured by properly setting the control depth variables of its elementary siphons. In the work by Li et al., 286 monitors are added for elementary siphons only based on the elementary siphon theory. In addition, it can be concluded that this approach improves the computational complexity by comparing with that in the work by Li and Zhou 215 due to the partial siphon enumeration.
Unfortunately, the behavioral permissiveness of the resulting supervisors designed by the policies in the works by Li and Zhou 215 and Li et al. 286 is quite restricted since the output arcs of the additional monitors point to the source transitions that represent the entry of raw parts of the system. To ameliorate the aforementioned problem, Li and Zhou 287 propose an algorithm for rearranging the output arcs of the additional monitors. From the viewpoint of structural complexity, computational complexity, and behavioral permissiveness, this policy seems to simultaneously address these issues in a reasonable way.
An MIP-based two-stage iterative policy is proposed by Huang et al., 250 which makes a number of improvements compared with the work by Ezpeleta et al. 235 However, the structural complexity problem of a liveness-enforcing supervisor has not significantly improved. By utilizing the concept of elementary siphons, Huang 141 proposes an improved two-stage control policy for S3PR nets. The major difference in the policy by Huang et al. 250 is in first stage. The first stage in the work by Huang 141 finds the set of elementary siphons in an S3PR net model provided that all SMSs are known. Then, a monitor is added for each elementary siphon. Compared with the policy by Huang et al., 250 it is shown that fewer monitors are needed. Later, Zhao et al. 246 further extend the iterative method to a more general class, called S4PR nets.
In order to achieve a better method that can precisely and immediately decide the controllability of dependent SMSs via their elementary siphons’ control without using the time-consuming MIP tests, the work by Liu et al. 288 proposes a more precise sufficient condition for the controllability of dependent SMSs and proves that it is better than the condition in the work by Li and Zhou. 215 Moreover, a relationship between the complementary set of a weakly dependent SMS and that of its corresponding elementary ones is presented and proven. Accordingly, a new deadlock prevention policy is developed by taking the advantages of the methods by Ezpeleta et al. 235 and Li and Zhou. 215
Generally, the concept of elementary siphons can clearly and completely indicate the relationship between elementary and dependent siphons in an ordinary net. For an S3PR net, the studies by Hou et al.289,290 explore the controllability conditions of a siphon composed of two and three elementary siphons, respectively, which are considered as further applications of elementary siphons of Petri nets. Under these sufficient conditions, a maximally permissive liveness-enforcing supervisor expressed by a set of monitors can be always decided by an algorithm with polynomial complexity for an S3PR. It can be concluded that for any S3PR, there exist initial markings such that a maximally permissive liveness-enforcing supervisor can be always found. These developments are based on the computation of elementary siphons and siphons composition operations, which has been shown to be of polynomial complexity with respect to the size of a considered Petri net model.
Since the weight of an arc can be greater than one and an operation place can use multiple resource types in a generalized net, the selection of elementary siphons and their controllability still need improvements in generalized Petri nets. Consequently, the augmented elementary siphon theory is established by sufficiently considering the requirement of multiple resource types by an operation and its weight information. In the work by Hou et al., 224 the concept of augmented siphons is first proposed for extending the elementary siphon’s application to a class of generalized Petri nets, WS3PR. An augmented siphon is a multiset that reflects the weights information of resource places contained by its original siphon. Among augmented siphons, the elementary siphons are also redefined, from which an elementary siphon set that strongly connects the system structure can be found for WS3PR nets. Moreover, on the basis of graph theory, initial resource weighted digraphs are presented for WS3PR, and the concept of isomorphic structures of Petri nets is also introduced. It is shown that the same set of elementary siphons can be admitted by all different WS3PR systems with isomorphic structures. Later, the work by Hou and Zhao 225 further updates the method proposed by Hou et al. 224 in a more general class of Petri nets, GLS3PR.
Motivated by finding a set of more proper and compact elementary siphons, the concept of augmented siphons is further proposed by Hou et al. 223 within a class of generalized Petri nets, called GLS3PR nets. The key contributions by Hou et al. 223 are twofold. First, the supremum of the number of augmented elementary siphons is found according to the relationship between siphons and their restrictive induced subgraphs, which is not greater than that of strongly connected restrictive induced digraphs that cannot be composed. Second, the number of elementary siphons obtained by this method is less than or equal to that obtained in the work by Li and Zhou. 215
For better improving both the structural complexity and behavioral permissiveness, Hou et al. 222 propose the augmented siphons and redefined elementary siphons in S4PR nets. The max′-controlled property is exposed such that the siphon controllability condition is relaxed. Furthermore, more permissive behavior is obtained through the rearrangement of the output arcs of monitors. Hou et al. 222 develop a deadlock control method by combining the deadlock avoidance policy with elementary siphon theory such that all siphons are max′-controlled after adding a monitor for each elementary siphon.
Abdul-Hussin 291 develops an elementary siphon–based deadlock control policy to ensure that all siphons are controlled and no emptiable control-induced siphons can be introduced. The work by Qin et al. 232 develops an elementary siphon–based policy to design a liveness-enforcing supervisor for an S3PR with uncontrollable and unobservable transitions. For all the elementary siphons, their complementary sets are successively expanded by considering the unobservability and uncontrollability of transitions. Monitors are added for the expanded complementary sets. This approach permits that there are arcs from monitors to a set of special uncontrollable transitions.
Combined techniques
Although the elementary siphon–based approaches play an important role in deadlock control for AMS, it also has several explicit drawbacks. First, elementary siphons merely reflect the topological structure of a net without carrying any dynamical evolution information. Second, the liveness-enforcing supervisors derived by elementary siphon–based methods are usually not optimal. Finally, the approaches on the basis of elementary siphon theory can only be applied to some special classes of Petri nets. Thus, much more attention has been paid to the combination of the state space and structural analysis.
Piroddi et al. 292 develop a selective siphon control policy that can obtain a small-sized supervisor with highly permissive behavior. Siphons are divided into essential and dominated ones. The controllability of an essential siphon implies that of its dominated siphons. At each iterative step, the complete enumeration of all siphons and dominated markings are required. Moreover, an essential siphon is distinguished by solving a set covering problem. Unfortunately, the computational complexity in theory is still exponential with respect to the size of a Petri net. In addition, in general, the policy in the work by Piroddi et al. 292 cannot lead to an optimal liveness-enforcing supervisor.
After the computational complexity problem is recognized, Piroddi et al. 293 improve the method shortly by utilizing the MIP-based deadlock detection method. Benefiting from the MIP method, a complete minimal siphon enumeration is avoided. They claim that the improved policy is computationally competitive. Later, Wang et al. 294 outline the iterative method proposed by Piroddi et al. 293 in detail. By contrast, the methods by Chao and colleagues138,295,296 can avoid both enumerating all minimal siphons and computing the reachability graph. Also, no iterations are required and there is no need to remove redundant monitors. It lists all such lost states and computes the lost states without reachability analysis but based only on the knowledge of which siphon is responsible for the lost states and some place invariants (PIs).
As known, the theory of regions can usually lead to a maximally permissive supervisor if it exists. However, it often faces the state explosion problem with an increase in the initial markings. Wei and Li 245 propose a new methodology by combining the theory of regions and elementary siphons. First, using the theory of regions, a maximally permissive liveness-enforcing supervisor for a net model is designed at a small initial marking. After that, all SMSs are computed and separated into elementary siphons and dependent ones. Then, the algebraic expressions among the markings of the monitors and the resource places are explored on the premise that the supervisor is live and maximally permissive, that is, all SMSs are controlled by the monitors. When the initial markings of the plant change, a new supervisor with the same structure can be determined by reallocating the initial tokens in monitors via the obtained expressions. That is to say, the theory of regions is in fact used to derive the net structure of a supervisor by arranging small initial markings. The contributions by Wei and Li 245 are twofold. One is that the state explosion problem may not occur after the theory of regions has once been applied to a plant with fixed net structure. The other is that the permissive behavior of the liveness-enforcing supervisor is near-optimal.
To lower the computational cost of utilizing the theory of regions, Li et al. 244 develop a two-stage deadlock prevention policy by integrating siphon control and the theory of regions. The first stage, called siphons control, is to add monitors for all SMSs identified through resource circuits such that it is optimally invariant controlled. Note that siphon identification and control is of polynomial complexity. In the second stage, the theory of regions is utilized to derive a supervisor for the augmented Petri net. Since the siphon control stage is optimal from the view of deadlock prevention point, the final supervisor will be still optimal if such a supervisor exists. The combined approach can produce a maximally permissive liveness-enforcing supervisor for an S3PR model and is more efficient than using the theory of regions alone.
Later, a new definition of the marking/transition-separation instances (MTSIs) is proposed by Huang and Pan, 297 called crucial marking/transition-separation instances (CMTSIs), which is the foundation of MTSI. The most attractive advantage of this approach is that the computation cost can be alleviated due to the involvement of few MTSIs. Experimental results show that a maximally permissive liveness-enforcing supervisor with efficient computation can be implemented by the proposed control policy. Further research on CMTSIs is reported by Chao. 298
The work by Chao and Wu 299 contributes an integrated approach that combines the elementary siphon–based controlled policy in the work by Li et al. 244 with the seminal recovery methods reported by Chao and colleagues.274–276 It is claimed that the method reaches more states and uses fewer monitors. The first stage is the same as the methods by Li et al. 244 and Huang and Pan, 297 that is, a partially controlled model is obtained by adding monitors to all emptiable resource siphons. The second stage adapts a deadlock detection and recovery method in the work by Chao et al. 275 to add only one monitor, taking much less time compared with those in the works by Li et al. 244 and Huang and Pan. 297 Without solving a large number of inequalities in MTSIs as required by the method in the work by Li et al. 244 to reduce the number of MTSIs and the CMTSIs method in the work by Huang and Pan, 297 the proposed method is more efficient. The resulting controller is maximally permissive as some methods in the works by Li and colleagues.244,300,301 Further work about the combination of the selective siphons and CMTSIs can be found in the work by Pan et al., 302 which improves the computational efficiency and reduces the number of CMTSIs.
The previous work by Chao and colleagues282,303 avoids reachability analysis by classifying siphons and adding monitors to critical siphons only. However, some live states may lose and the number of monitors required is as many as that of critical siphons. Based on these results, a novel method is developed to merge several monitors into a single one while not losing the live states by Liu et al. 304 It achieves the same best results in the existing literature while avoiding the time-consuming reachability analysis which does not scale well with the large size of the nets. For a well-known benchmark, the siphon-based merging method in the work by Liu et al. 304 may not achieve minimal configuration. Although we could reduce one monitor, which monitor to choose to merge seems to be ad hoc. It is unclear how to select a monitor to reduce for large nets. The work by Chao 305 further tackles such an issue successfully using the concept of basic siphons.
The work by Wang et al. 294 reviews the existing iterative control policies of discrete event system (DES) modeled with Petri nets and reveals a few technical problems among them. Experimental results indicate that the suitability, effectiveness, and efficiency of an iterative deadlock control approach are sensitive to specific examples, and no general algorithm is found in the literature, which works well for all cases.
Afterward, the simulation with respect to existing deadlock prevention policies and different Petri net models is implemented by Nasr et al., 142 which explores whether a liveness-enforcing Petri net supervisor can provide better time performance. Abouel Nasr et al. claim that, compared with the siphon-based methods, the iterative methods always lead to structurally and computationally complex liveness-enforcing supervisors. In addition, iterative methods can provide better behavioral permissiveness than siphon-based methods for small-scale systems. For large systems, an SMS-based method can obtain better behavioral permissiveness than the other methods.
For a dozen of years, we have witnessed that the results are much enriched in the area of siphon control and other iterative methods. However, it could not be denied that many interesting problems remain unsolved in terms of application scope, behavioral permissiveness, computational efficiency, and supervisor’s structural complexity. Moreover, there are several survey papers and books that investigate the supervisory control problems of DES using Petri nets.306,307
Concluding remarks
In most cases, the deadlock prevention policies characterize the deadlock behavior of a system in terms of siphons in its Petri net model and utilize this characterization to control the net. Siphon control provides an effective way to prevent the occurrence of deadlocks. A basic task with respect to siphon-based deadlock control is to design a liveness-enforcing supervisor by considering three performance indicators: structural complexity, computational efficiency, and behavioral permissiveness. Nowadays, the concept of elementary siphons either in ordinary or generalized Petri nets plays a key role in the development of structurally simple liveness-enforcing Petri net supervisors. This article focuses on investigating the state-of-the-art elementary siphon theory of Petri nets including basic concepts, siphons and elementary siphons computation, controllability conditions, and deadlock control applications. The survey is expected to be a reference to guide the researchers and practitioners for choosing suitable methods for their research works and industrial application cases.
Footnotes
Appendix 1
Appendix 2
Academic Editor: Tatsushi Nishi
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the National Natural Science Foundation of China under Grant No. 61403296.
