Abstract
Most existing deadlock prevention policies deal with deadlock problems arising in flexible manufacturing systems modeled with Petri nets by adding control places. Based on the reachability graph analysis, this article proposes a novel deadlock control policy that recovers the system from deadlock and livelock states to legal states and reaches the same number of states as the original plant model by adding control transitions. In order to reduce the structural complexity of the supervisor, a set covering approach is developed to minimize the number of control transitions. Finally, two flexible manufacturing system examples are presented to illustrate the proposed approach.
Keywords
Introduction
Flexible manufacturing systems (FMSs) are widely used to produce various workpieces using machines, robots, and automated guided vehicles, which are recognized as shared resources. Deadlocks 1 may occur due to the competition for the limited shared resources among concurrently executed processes, and they greatly decrease the efficiency of the system. Therefore, it is necessary to analyze and control deadlocks in FMSs.
Petri nets2,3 are suitable to model and analyze FMSs due to their compact and graphical representation. Based on Petri nets, a lot of policies to deal with deadlock problems4–19 have been developed. Generally, there are mainly two Petri net analysis techniques used to deal with deadlock prevention: structure analysis7,8,19–25 and reachability graph analysis.15,26–30 The former always derives a deadlock prevention policy based on special structural objects of a Petri net such as siphons or resource-transition circuits. In general, the derived supervisor is simple but suboptimal. The latter can obtain a very highly or even maximally permissive supervisor. However, its computation is always expensive.
Uzam and Zhou 15 propose an iterative synthesis approach for deadlock prevention in FMSs. At each iteration, a first-met bad marking (FBM) is singled out and a control place is designed to prevent this FBM from being reached using a well-established invariant-based method. 31 This process is followed until the net becomes live. Although this method is easy to use, it cannot guarantee the optimality of the supervisor.
Chen et al. 5 present an efficient method to design optimal supervisor such that all FBMs are forbidden and all legal markings are reachable. To overcome the inefficiency of state enumeration by the traditional methods, binary decision diagrams (BDD) are provided for the computation of the reachability graph.
Huang et al. 32 propose an approach by adding control transitions to the plant net, which can convert the dead markings into live ones. The approach has more permissive markings than the existing place–based ones. However, there is no formalized algorithm to compute the control transitions and the minimum of control transitions that are needed to add is not considered.
Motivated by the work in Huang et al., 32 this article proposes a novel deadlock control policy to design control transitions based on the reachability graph analysis and adds the control transitions to the plant net which can recover all deadlock and livelock markings to legal ones. A set covering technique is developed to derive the minimal set of control transitions. Finally, the controlled system becomes live by adding the minimal set of control transitions to the plant net.
The remainder of this article is organized as follows. Section “Preliminaries” briefly reviews the preliminaries used throughout this article. Section “Computation of control transitions” discusses the computation of the minimal set of control transitions using a set covering technique. Section “Transition-based deadlock control policy” presents a deadlock control policy that is shaped into an algorithm. An explanatory example is illustrated in section “An illustrative example.” Section “Experimental studies” provides some experimental results. Finally, section “Conclusion” concludes this article.
Preliminaries
Basics of Petri nets
A Petri net2,3 is a four tuple
Given a node
A marking M of a Petri net N is a mapping from P to
A transition
A Petri net N is bounded if
For a transition
Given a Petri net
Reachability graph
Let
For a Petri net
Computation of control transitions
This section develops an approach to obtain control transitions based on the reachability graph analysis.
Definition 1
Let
Deadlocks arise due to the existence of deadlock or livelock markings in
Let
For a pure Petri net, its incidence matrix can completely determine its structure. Therefore, the critical question is to define the incidence vectors of added control transitions. In this article, we introduce the projection functions as follows.
Let X be a vector.
To recover the deadlock and livelock markings to legal ones and reach the same number of markings as the plant net, the added control transitions should be enabled at deadlock or livelock markings but disabled at other markings. The firing of control transitions would yield the corresponding legal markings in
Definition 2
Let
To obtain a live controlled system, all the deadlock and livelock markings in
In what follows, an algorithm to compute the set of all sets of control transitions for all deadlock and livelock markings
Algorithm 2 presents the method to calculate the set of all control transitions
Computation of the set of all sets of control transitions for all deadlock and livelock markings
Computation the set of all control transitions
The following SCP33,34 can be employed to find a minimum cardinality of control transitions.
Let
SCP:
The objective function represents the minimal number of control transitions. Solving this SCP, an optimal solution
Transition-based deadlock control policy
This section presents a deadlock control policy by which a live controlled system with a minimal set of control transitions can be obtained.
Theorem 1
Transition-based deadlock control policy.
Proof
Each control transition in
An illustrative example
In this section, an FMS example is used to illustrate the proposed deadlock control policy that can obtain a live controlled system with a minimal set of control transitions.
The Petri net model of an FMS shown in Figure 1 is considered to illustrate the proposed deadlock control policy. It is a pure and bounded Petri net. In the net, there are 13 places and 10 transitions. Figure 2 shows that the net has 32 reachable markings, 28 of which are legal markings depicted in solid lines and 4 of which are deadlock one depicted in dashed lines. The set of deadlock markings is

A Petri net model

Reachability graph of the Petri net in Figure 1.
First, by Algorithm 1, the sets of control transitions of all deadlock and livelock markings are obtained. The sets of control transitions, denoted by
Control transitions in
Control transitions in
Control transitions in
Control transitions in
Second, by Algorithm 2, the set of all control transitions is obtained. Table 5 shows the set of all the control transitions
Control transitions in
There is no need to add all control transitions in
Third, the minimal set of control transitions
subject to
Solving the above integer linear programming problem gives
Minimal set of control transitions of the net shown in Figure 1.

A controlled system of the net shown in Figure 1.

Reachability graph of the controlled system shown in Figure 3.
Note that the solution of the above integer linear programming problem is not unique. Resolving it, another solution that
Another minimal set of control transitions of the net shown in Figure 1.

Another controlled system of the net shown in Figure 1.

Reachability graph of the controlled system shown in Figure 5.
Experimental studies
This section provides some experimental results of the proposed deadlock control policy.
The Petri net model of an FMS is shown in Figure 7. It is an S3PR taken from Ezpeleta et al.
7
There are 15 places and 11 transitions. It has 261 reachable markings, 232, 3, and 1 of which are legal, livelock, and deadlock, respectively. Using the proposed method, the minimal set of control transitions that can recover all deadlock and livelock markings to legal ones are derived, which is shown in Table 8, where the first column is the index number i, second and third columns indicate pre-places

A Petri net model
Minimal set of control transitions of the net shown in Figure 7.

Controlled system of the net shown in Figure 7.
Performance comparison of some deadlock policies for the net in Figure 7.
Conclusion
This article presents a novel deadlock control policy to derive a live controlled system by adding control transitions instead of control places to the plant net. The application scope of the proposed method is limited to pure and bounded Petri net models of FMSs. This transition-based method is novel and much different from the existing place–based deadlock prevention policies. The proposed policy is sure to have more permissive markings than the existing place–based policies, although it is still NP-hard since the reachability graph analysis is needed. Future work will focus on how to reduce the computational burden of the proposed policy.
Footnotes
Academic Editor: ZhiWu Li
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 in part by the National Natural Science Foundation of China under grant no. 61374068, the Fundamental Research Funds for the Central Universities under grant no. XJS15039, and the Scientific and Technological Research Council of Turkey under grant no. TÜBİTAK-112M229.
