Abstract
The deadlock control problem in flexible manufacturing systems (FMSs) has received much attention in recent years. The formalism of the Petri net is employed to effectively model, analyze, and control deadlocks in an FMS case study. There are many kinds of deadlock prevention strategies based on the Petri net approach, where computational complexity is a major problem that needs to be considered. Based on the Petri net theory, this paper focuses on the two special subclasses in the PR net, namely the dual-process PR and the dual-process PR, in a bid to prevent deadlocks in an FMS. The relationship between the net structural characteristics and the deadlocks reached was analyzed, and then a regular method of adding controllers for these two models was proposed to reduce computational complexity.
Keywords:
flexible manufacturing system; Petri net; deadlock prevention; computational complexity; control law MSC:
93C65
1. Introduction
In flexible manufacturing systems (FMSs) [1,2], a resource is usually shared by different processes. If the resource allocation is not appropriate, the system may move to deadlocks [3], where any deadlock makes the whole system or part of the system unable to be operated, and indirectly causes incalculable economic losses or other catastrophic consequences. Therefore, a deadlock is a situation that FMSs should avoid. The description, analysis, solution, and control of deadlocks in FMSs are undoubtedly of vital importance to ensure the normal operation of the system.
The Petri net theory [4,5] has a strict mathematical expression and intuitive graphical expression, and is often used for the modeling, deadlock analysis, and control of FMSs. In the Petri net theory, there mainly exist three approaches for solving the deadlock problem: deadlock detection and recovery [6], deadlock avoidance [7,8], and deadlock prevention [9,10,11]. The reachability graph analysis method [12,13,14] is a fundamental technique for deadlock prevention, which provides complete and detailed information about the dynamic behavior of Petri nets since all-state place enumeration is considered. Moreover, the structural analysis method [15,16,17,18] is marking-independent and only depends on the place–transition relationship of the underlying net by the flow relation. Uzam and Zhou [19] proposed an active controller design method using the iterative method. The proposed method simplifies the calculation of the control places, but it cannot guarantee optimal controllability and solves the reachability graph repeatedly. In addition, Chen et al. [20] propose another iterative controller design method, which has higher computational efficiency and achieves optimal control. In the proposed method, first, the minimum cover sets of legal and first-time damaged identifiers are obtained by vector coverage. Second, by solving an integer linear programming problem, a P-invariant is designed to prevent the system from reaching the first-time damaged identifier, and then the illegal identifier is forbidden. Finally, the optimal controller of the system is obtained.
Siphons are closely related to deadlock on structural analysis [21]. Once a siphon is emptied, all transitions related to the siphon in the net become dead, and then the system is blocked. Therefore, siphon control is a typical deadlock prevention strategy based on structure analysis. Ezpeleta et al. [22] define the system of simple sequential processes with resources (PR), and propose a controller design method for adding control places to all strict minimal siphons to avoid the result that siphons become emptied. The proposed method realizes the active control of the net but, for the large-scale net, a large number of control places need to be added, which makes the net structure extremely complex. Huang et al. [23] propose an iterative deadlock control strategy based on PR, where the strategy is divided into two stages. One is siphon control, and the other is control-induced siphon control. To reduce the complexity of the model structure, Li et al. [24] propose the concepts of the basic siphon and subordinate siphon, proving that the controllability of the subordinate siphon can be guaranteed by the controllability of the basic siphon if the basic siphon is controlled under certain conditions. Additionally, they propose the method of adding controllers to basic siphons as controlled places, which reduces the scope of controlled places, the computational complexity, and structural complexity, and is more suitable for large-scale Petri nets, compared with the method proposed in [22]. In addition to adding control places from the siphon point of view, Xing et al. [25] utilize the resource transition (RT) circuits of PR to describe the deadlock of the system, where a deadlock state occurs if a maximal perfect RT-circuit (MPRTC) is saturated, and a controller is designed to retain the maximally permissive behavior of PR without resources. However, the method has to face the problems of computational complexity and structural complexity. Liu et al. [26] put forward the concept of transition coverage, and prove that an active Petri net controller can be obtained only by controlling the maximal perfect RT-circuit under change coverage. As a result, the proposed method reduces the computational complexity of controlling and structural complexity of the net.
This paper studies dual-process PR and dual-process PR and analyzes the relationship between their structural characteristics and deadlock, where the control places are added to form the P-invariant with the activity places in the original net to realize deadlock prevention. The relationship between the control places and the net size is that the two special subclasses have fixed control laws. For a given dual-process PR and a dual-process PR, there is no need for the complex calculation of siphons or RTC, since control places can be directly added to the net to ensure that the system is alive.
The contributions of the paper are twofold as follows.
- This study introduces the concept of encounter place pair and encounter state in the dual-process PR, and the relationship between the encounter state and deadlock is analyzed. When the initial marking of the resource place is 1, the addition of control places prevents the occurrence of encounter states, progressive encounter states, and blocked states, ensuring that the net is live and maximally permissive. Moreover, the control law of dual-process PR is summarized.
- This paper utilizes the concept of PR and analyzes the relationship between a saturated pair of encounter paths and deadlock in dual-process PR. As a result, the optimal active-controlled system is obtained by adding control places. The mathematical relationship between the number of independent resource holder loops and the number of control places in the dual-process PR is analyzed, and the control law of the dual-process PR is obtained indirectly.
2. Preliminaries
2.1. Petri Nets
A Petri net (PN) is a four-tuple , where P and T are non-empty and finite sets of elements named places and transitions, and . F is a flow relation set of a PN, where is represented by directed arcs pointing from transitions to places (or places to transitions). Let denote the set of non-negative integers. W: represents a map that assigns a non-negative integer number (weight) to each arc in F, i.e., if , else . A PN is ordinary, if, for all , .
M is a marking of a PN, which is a map: . For a place , represents the quantity of tokens in it. A place p is marked, if . A subset is marked if there exists at least one place marked by M. . is said to be a marked net with being called an initial marking.
Let be an element of a PN . is the preset of i; is the the postset of i. The previous notation is extended to sets of nodes; if , , then = . If, for all , a path of N is defined as a string , where , . A path is an elementary path, if all nodes of it are different (except, perhaps, and ). A path is a circuit if it is an elementary path and .
A transition is enabled at a marking M if, for all , , which is denoted by . Firing t to a new marking such that for all , , denoted by . If there is a sequence of transitions = as well as markings , such that holds, we can say is reachable from marking M. is called the reachability set which denotes all the markings reachable from M in . A reachability graph of a net is denoted as . A PN is called a state machine if, for all , .
A net is pure if, for all , implies . It can be noticed that a pure PN is able to be represented by an incidence matrix , where . This incidence matrix can be divided into two parts: Post−Pre, where Post and Pre are called the output matrix and input matrix, respectively.
Given a PN (), is live under if . is live if , t is live under . is dead under if , .
A P-vector is a column vector indexed by P, where is the set of integers. The P-vector I is called a P-invariant (place invariant) if and . The P-invariant I is a P-semiflow if every element of I is non-negative. is called the support of I.
Let S be a non-empty subset of places. S is called a siphon (trap) if holds. A siphon is said to be minimal if there is no siphon contained in it as a proper set. A minimal siphon is said to be strict if it does not contain a trap. A strict minimal siphon is denoted as SMS for short. denotes the set of SMSs in a PN.
2.2. PR
The system considered can be modeled as a system of simple sequential processes with resources (PR) if there is no unreliable resource. The definition of PR is briefly introduced as follows.
Definition 1
([22]). Let and be PNs with and , where and . The net with is said to be the resultant of composing and via the set of shared places if (1) , , , and if , ; and (2) , , , , and , . The composition of and is denoted by .
Definition 2
([22]). A system of simple sequential processes with resources (PR) is the PN defined as the union of a set of nets sharing common places, where the following statements are true:
- is called the process idle place of . Elements in and are called activity or operation and resource places, respectively. A resource place is called a resource for short in case of no confusion.
- ; and .
- is a strongly connected state machine, where is the resulting net after the places in and related arcs are removed from and .
- Every circuit of contains place .
- Any two s are composable when they share a set of common places. Every shared place must be a resource.
- Transitions in and are called the source and sink transitions of an PR, respectively.
Definition 3
([22]). A PN is an PR and let S be an SMS in N. and represent the set of resource places and the set of activity places in S, respectively. For , is called the set of holders of r, which means that these activity places in need resource r. Let and it is called the complementary set of siphon S.
Figure 1 is an PR that has eleven places and eight transitions, where , , and . The sets , , and are three SMSs for the PN. According to Definition 3, we have , , and , which means that places and can use resources in , and can use resources in , and resources in can be used by places and . Their complementary sets are , , and , respectively.
Figure 1.
An PR net.
Definition 4
([22]). Let be an PR, and x and y are two different nodes in . (1) A path in N that merely contains activity places in and transitions in T is called an operation path. (2) If there exists an operation path in N from x to y, it is said that x is previous to y in N, which is denoted as . (3) Let . If there is a node with , we can obtain . If there exists a node such that , then .
Let us consider the net shown in Figure 1, where is a circuit and is a path in this circuit. Clearly, we have .
3. Control Law for Dual-Process PR
In the Petri net-based deadlock prevention strategy, computational complexity is a problem that needs to be faced. This section proposes a regular method by adding control places for the dual-process PR model, which avoids the calculation of siphons or reachable graphs. First, the concept of the dual-process PR and its encounter state are introduced. Then, the activity analysis of this special model is carried out, and the activity of the model is guaranteed by adding the control places, and then the control law of such model is obtained.
3.1. Dual-Process PR and Encounter State
Definition 5.
Let be a normal PR; it is called a dual-process PR if
- ;
- ;
- , ;
- (a) ,, ; (b) , , , ; if , so .
Given a dual-process PR net, the subscripts of places and transitions are arbitrary but, for the convenience of description, they need to be initialized in this chapter. Based on the definition in the previous section, Algorithm 1 is proposed to formalize the subscript initialization method for a dual-process PR, where Line 1 defines the output . According to the rules, all places p and transitions t are numbered in Lines 2–24. The flow relations f remain unchanged in Lines 25–27. When the number of the resource places is :, , , , . In addition, corresponds to circuit and corresponds to circuit , where and represent process 1 and process 2, respectively. When a token is fired from the idle place and then returns to the idle place through the circuit or , the process ends normally. For instance, Figure 2 displays a subscript-initialized dual-process PR.
Figure 2.
A subscript-initialized dual-process PR.
Definition 6.
Let be an elementary process path in a dual-process PR; is said to be the transition set from to ; is said to be the place set from to .
| Algorithm 1: The subscript initialization method for a dual-process PR |
![]() |
Definition 7.
Let be a dual-process PR; , ; ordered pair is said to be an adjacent resource place pair and ordered pair is said to be an encounter transition pair if and ; ordered pair is said to be an encounter place pair if and .
According to Definitions 2 and 5, in a dual-process PR net, for , firing t will consume one token of and, if and , firing t will consume one token of and release one token of r. So, the intersections and are not empty.
Definition 8.
Let be a marked dual-process PR, be an adjacent resource place pair in N, be an encounter place pair associated with , and ; M is said to be an encounter state marking if , noted as .
A dual-process PR net removes the idle places and the associated directed arcs; the subnet shown in Figure 3, , . is the adjacent resource place pair; is the encounter transition pair. , , so the encounter place pair is .
Figure 3.
A subnet with non-encounter/encounter state marking. (a) A subnet with non-encounter state marking. (b) A subnet with encounter state marking.
Figure 3a shows the subnet with non-encounter state marking, where , ; the encounter place pair does not occupy the token in the associated adjacent resource place pair. Figure 3b shows the subnet with encounter state marking, where ; the encounter place pair occupies all the tokens in the adjacent resource place pair associated with it.
Theorem 1.
Given a marked dual-process PR , if , then deadlocks will occur in it.
Proof.
According to Definition 5, in the case of , firing t will consume one token of and release one token of r. Similarly, firing will consume one token of r and release one token of . If M is an encounter state marking, , , the places of the encounter place pair occupy all tokens in the adjacent resource place pair associated with it. Thus, both t and cannot fire, and deadlocks occur in the PR. □
Figure 4a shows a dual-process PR with encounter state marking . For adjacent resource place pair , is the encounter place pair associated with it; , , and , occupy all tokens in , so and cannot be fired; thus, and cannot obtain the tokens again, and and cannot be fired similarly, forming a circular wait. In other words, a deadlocks occur in this net. But is enabled in circuit , and is enabled in circuit , so the net is not dead. If and are fired, all resource places in the net have no tokens, all transitions cannot be fired, and it means the net is dead, as shown in Figure 4b.
Figure 4.
A Petri net with encounter state marking and dead marking. (a) A Petri net with encounter state marking. (b) A Petri net with dead marking.
3.2. Control Law for Dual-Process PR with Equals to 1
Definition 9.
Given a marked dual-process PR , where , let be an encounter place pair of N. The order pair is said to be a progressive encounter place pair if , where , and denotes the set of all progressive encounter place pairs of N.
Definition 10.
Let be a marked dual-process PR, where . Assume that is a progressive encounter place pair; then, is a progressive encounter state marking if , noted as .
Theorem 2.
Given a marked dual-process PR , where , and , then there is a sequence of transitions σ, satisfying .
Proof.
In the marked dual-process PR , if , it means that both processes 1 and 2 have artifacts entering the system. Since the initial marking of every resource place is 1, and the order of use of resources by processes 1 and 2 is reversed, if there are workpieces in both processes, then, after a certain transition sequence is transmitted, the two workpieces will inevitably enter the encounter places, denoted by . □
As shown in Figure 5a, the place pair is an adjacent resource place pair and is an encounter place pair associated with it, is a progressive encounter place pair according to Definition 9, and is a progressive encounter state marking according to Definition 10. The transitions can be fired at this moment. When is fired, is an encounter state marking, which is shown in Figure 5b. The transitions cannot be fired; only can be fired at this moment. Then, firing a sequence of transitions , the whole net is dead; all the transitions cannot be fired.
Figure 5.
A PN with progressive encounter state and encounter state marking. (a) A PN with progressive encounter state marking. (b) A PN with encounter state marking.
Definition 11.
Let be a marked dual-process PR, where . Let denote the set of all encounter place pairs and progressive encounter place pairs, where . is defined as a marked controlled net of , where
- ;
- , where , , ;
- (a), ; (b),.
Theorem 3.
Let be a marked dual-process PR, where ; according to Definition 11, the marked controlled net obtained by adding control places to is live and maximally permissive.
Proof.
In a marked dual-process PR where , the marked controlled net is obtained by adding control places to . For every reachable marking , the control place and the encounter place pair or progressive encounter place pair constitute the P-invariant. With , for all and , the condition is satisfied: . Consequently, when the workpiece enters a process, it prevents another process from having a workpiece. At this point, the operation of the entire system is equivalent to a simple sequential process with resources PR. The circular wait condition can never be met, ensuring that is live.
Because , , when comparing the marked controlled net to the marked dual-process PR , in the reachable graph, only the encounter state marking and the progressive encounter state marking are eliminated, preserving all markings except the two special markings. Simultaneously, the encounter state marking and the progressive encounter state marking can lead to system deadlock or inevitably generate deadlock, corresponding to the dead marking and the bad marking in the reachable graph of . The marked controlled net removes only the dead marking and the bad marking compared to the marked dual-process PR , retaining all legal markings, making maximally permissive. □
Referring to Definition 11, Algorithm 2 outlines the controller design for a marked dual-process PR where . The procedure begins with initializing the dual-process PR to obtain in Line 1. Subsequently, it calculates the sets of all encounter place pairs and progressive encounter place pairs for N in Lines 2–3. The set of controlled places, , is determined as the union of and in Line 4. Following Definition 11, controlled places are systematically added to N in Lines 5–8. The resulting controlled net is then generated in Lines 9–10. According to Theorem 3, the controlled net , established by introducing control places to , ensures both liveness and maximal permissiveness.
| Algorithm 2: A controller of a marked dual-process PR where |
![]() |
Theorem 4.
In a marked dual-process PR where , , the control law is outlined in Table 1. According to this law, the optimal controller can be derived without the need to calculate siphons and reachable graphs of the dual-process PR. The number of control places, denoted as x, is related to the number of resource places n:
Table 1.
The control place of the initial marking of every resource place is 1.
Proof.
In a marked dual-process PR where , , we determine the encounter state marking and the progressive encounter state marking of the net. For the operation place , it forms an encounter place pair with and progressive encounter place pairs with , where , . To prevent encounter state markings and progressive encounter state markings, control places need to be added. Similarly, for the operation place , it forms an encounter place pair with and progressive encounter place pairs with , requiring control places to be added. This pattern continues and, for the operation place , it only forms an encounter place pair with , necessitating the addition of one control place. In summary, the number of control places is
□
Example 1.
In Figure 6, a marked dual-process PR is depicted, where , , and there are four pairs of adjacent resource places denoted as . The net comprises 112 reachable states, with 63 being good states; for example, is a good state, but is a dead state. If not controlled, the net will inevitably enter a dead state. By substituting into Table 1, 10 control places are obtained, as illustrated in Table 2. The controlled net is live, with the number of reachable states being 63, and it is maximally permissive. To further test the control law shown in Table 1, control places are added to some large dual-process PR, and the results are displayed in Table 3.
Figure 6.
A dual-process PR.
Table 2.
The control places of the dual-process PR shown in Figure 6.
Table 3.
Controlled system activity verification where initial marking of every resource place is 1.
4. Control Law for Dual-Process PR
Dual-process PR net is a special subclass of PR net, where every resource place is held by two processes and the two processes use the resource in reverse order. However, for a manufacturing system with resources that are only employed by one process, the dual-process PR net cannot model and analyze it. This section studies the activity analysis and control laws of another special PR subclass: the dual-process unitary PR (PR) net.
Definition 12
([18]). Let θ be a circuit in an ; it is called a resource–transition circuit (RT-circuit) if it contains resource places and transitions only.
Definition 13
([18]). In an , assuming that there exist two RT-circuits and , then is called a ξ-resource if .
Definition 14
([17]). In the context of an , a resource is termed independent if there is no strict minimal siphon S such that ; otherwise, if such a siphon exists, r is considered dependent. The set of independent resources in is denoted by .
Definition 15
([18]). Given a resource in an PR, an associated holder–resource circuit (HR-circuit), denoted by , is a simple circuit consisting of r as the unique resource place, an activity place , and the connecting transitions. An HR-circuit, , is termed monoploid if .
Definition 16
([18]). An PR is said to be unitary if there is only one ξ-resource and, for all , there exists an RT-circuit θ, such that where is a set of resource places in N.
Definition 17.
Let be a marked PR and unitary; is a marked dual-process PR if
- ;
- , ;
- , ;
- , .
Figure 7 illustrates an PR net, featuring three distinct strict minimal siphons: , , and . Two non-inclusive resource transition circuits, and , are discerned.
Figure 7.
A dual-process PR.
It is noteworthy that , , designating as the exclusive resource in N. Furthermore, and , affirming the net’s classification as a PR net.
Defining sets as , , , and , we observe a consistent pattern with for .
Definition 18.
Consider a dual-process PR net denoted by . For any , if with and , we designate r as a shared repository, denoted as . The set of all shared repositories in N is represented by .
If N is a dual-process PR, it must exclusively feature three shared repositories, denoted by , with representing a resource place.
An RT-circuit necessitates a minimum of two shared resource repositories. Without this, the path formed by the resource places and transitions cannot constitute a circuit, as per Definition 17. Furthermore, as articulated in Definition 17, each process within a dual-process US3PR net lacks a branch structure. Consequently, any two adjacent shared resource repositories exclusively correspond to an RT-circuit.
Suppose there are only two shared resource repositories in N; in that scenario, only one RT-circuit exists, but no resource is present in N, leading to a contradiction with Definition 17. Conversely, assuming N contains four or more shared resource repositories would result in the formation of two or more resources, contradicting Definition 17. In summary, a dual-process PR net must invariably consist of precisely three shared resource places.
Definition 19.
If there exists a basic path , , where, for all , , and , then is considered the basic process path from to , denoted as .
Definition 20.
Let be a basic process path for the marked dual-process PR , and be the set of operation places in . If, for all , and all , there exists , then is referred to as a set of resource places held by . If , is said to be saturated; if , is said to be progressively saturated.
Definition 21.
Let be the set of shared resources for the marked dual-process PR ; if , and , then the basic process path and are a pair of encounter paths.
Theorem 5.
Let and be a pair of encounter paths in a marked dual-process PR ; if and are saturated, then a deadlock occurs in N.
Proof.
Consider a pair of encounter paths in a marked dual-process PR , denoted as and . According to Definition 21, and , implying that firing or requires tokens in and r respectively.
As both and are saturated, the operation places in have occupied all tokens in the associated resource places. Firing the output transition to release tokens in allows subsequent transitions to be fired, releasing other occupied resources. Similarly, the operation places in have occupied all tokens in the associated resource places. Firing the output transition to release tokens in r enables subsequent transitions to release other occupied resources.
Therefore, both and depend on the other path to release resources first, leading to a circular wait condition. Consequently, all transitions in and become inactive. □
Definition 22.
In a marked dual-process PR , let be a set of shared resources, with identified as a ξ resource. Consider two pairs of encounter paths: and , as well as and . For any marking M in , M is termed a progressive encounter state if the following conditions hold: (1) and are saturated. (2) and are progressively saturated.
Theorem 6.
Given a marked dual-process PR net , if a progressive encounter state occurs, a deadlock occurs inevitably in N.
Proof.
Let and be a pair of encounter paths of . Referring to Definition 22, and are saturated, while and are progressively saturated. Under these circumstances, the paths have no opportunity to reach saturation, and deadlock is unlikely.
Since both and are occupied, transitions and cannot be fired, preventing a decrease in tokens in and . The output transition of serves as the input transition of , implying that firing would increase tokens in and result in saturation. Similarly, firing would saturate . Given that is a resource with , simultaneous saturation of and is impossible. Therefore, a progressive encounter state inevitably leads to an encounter state, causing deadlocks. □
Definition 23.
Consider a dual-process PR net , where represents a set of shared resource places and is designated as the ξ resource. Let . Two pairs of encounter paths corresponding to the resource pairs and , are denoted as , and , , respectively. A set of controlled places of N is defined as follows:
- ;
- ;
- ;
- , ;
- , .
Definition 24.
Let denote the set of controlled places in a dual-process PR net N. A set is defined as the collection of resource places held by if .
Definition 25.
Let be a marked dual-process PR net, where is a set of controlled places of N. Add the control place to , such that forms a P-invariant of the controlled net , where , and, for all , , and .
Theorem 7.
Let be marked a dual-process PR net; the controlled net defined in Definition 25 is live and maximally permissive.
Proof.
Given a marked dual-process PR net , where the number of monoploid holder resource circuits is represented by a variable in the parameterized dual-process PR model, is the set of shared resource places, with being the resource, and encounter path pairs include and between and , and and between and . Let x, y, z, and w represent the number of operation places in , , , and , respectively, where .
According to Definition 25, control places are added to to obtain the controlled net . Since the control places and the controlled place set form a P-invariant of , where , and the encounter path pair and satisfies the condition that, for all , , the encounter path pair and will not saturate. Consequently, no deadlock is generated, and the workpiece in x can enter z by firing , and the workpiece in y can be exported by firing . Similarly, for the encounter path pair and , after adding the control place, ensuring that the workpiece in w can enter y by firing , the workpiece in z can be exported by firing . The controlled net is live.
The initial marking of control place . Compared to the original net , the controlled net only eliminates the encounter state and the progressive encounter state in the reachable graph, retaining all states except these two special states. As the encounter state and the progressive encounter state can cause deadlock or inevitably lead to deadlock, they correspond to the dead states and bad states in the reachable graph of . The controlled net removes only the dead states and bad states compared to the original net while retaining all legal states. Therefore, is maximally permissive. □
Figure 8 shows a dual-process PR net , where , , , , , , , the number of operation places in , , , and are x, y, z, and w, respectively.
Figure 8.
A dual-process PR.
Theorem 8.
Let be a marked dual-process PR, and x, y, z, and w respectively represents the number of operation places in , , , and , where is the number of control places added according to Definition 25. As a result, k is only related to y and z, and satisfies .
Proof.
The control places defined by Definition 25 have a one-to-one correspondence with . Therefore, the number k of is equal to the number of . According to Definition 23, the following conditions are satisfied:
(1) The controlled place set is the set of operation places in the encounter path pair and , denoted as .
(2) The controlled place set is the set of operation places in the encounter path pair and , denoted as .
(3) The controlled place set is the set of operation places in the encounter path pair and , and , which excludes the set of places in , i.e., .
(4) If , where contains y operation places, the number of is . Correspondingly, the number of is . Similarly, if , the number of is . In summary, the number of is , and the number of , i.e., . □
Example 2.
In the dual-process PR net shown in Figure 7, since the number of reachable states is 405, and the number of good states is 380, the net is dead. The sets and are presented in Table 4. According to Definition 25, a control place needs to be added to each controlled place set. The control places and the controlled place set together form a P-invariant, and the control places are listed in Table 5. As a result, the controlled net with 380 reachable states is live and maximally permissive.
Table 4.
and of the dual-process PR shown in Figure 7.
Table 5.
The control places of the dual-process PR shown in Figure 7.
5. Conclusions
In this paper, two special subclasses in the PR are studied: the dual-process PR and the dual-process PR network models. By analyzing the relationship between their structural characteristics and deadlocks, some control laws are proposed, avoiding complicated calculations. In the future, we plan to research control laws for a more universal dual-process PR model that does not limit the initial marking of resource places to 1.
For the convenience of analysis, each process in the dual-process PR and the dual-process PR is defined without a branch structure, making the model relatively simple. Therefore, extending the model to include multiple processes or multiple branches in each process, and then conducting control law research, is also the focus of the next step.
Author Contributions
Y.Y.: Conceptualization of this study, Methodology, Software, Formal Analysis, Investigation, Writing Original Draft. J.Y.: Conceptualization, Methodology, Supervision, Reviewing and Editing. N.L.: Formal Analysis, Supervision, Reviewing and Editing. C.Z.: Supervision and Reviewing. All authors have read and agreed to the published version of the manuscript.
Funding
This work is partially supported by the Gansu Education Department project under Grant 2024B-063 and the Lanzhoujiaotong University youth fund.
Data Availability Statement
The experimental data used in this paper can be obtained by contacting the corresponding author.
Conflicts of Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
References
- Mejía, G.; Niño, K. A new Hybrid Filtered Beam Search algorithm for deadlock-free scheduling of flexible manufacturing systems using Petri Nets. Comput. Ind. Eng. 2017, 108, 165–176. [Google Scholar] [CrossRef]
- Xu, G.; Chen, Y. Petri-net-based scheduling of flexible manufacturing systems using an estimate function. Symmetry 2022, 14, 1052. [Google Scholar] [CrossRef]
- Chen, Y.; Li, Z.; Al-Ahmari, A.; Wu, N.; Qu, T. Deadlock recovery for flexible manufacturing systems modeled with Petri nets. Inf. Sci. 2017, 381, 290–303. [Google Scholar] [CrossRef]
- Martinez, J.; Alia, H.; Silva, M. Petri Nets for the Specification of flexible Manufacturing Systems. In Modelling and Design of Flexible Manufacturing Systems; Elsevier: Amsterdam, The Netherlands, 1986. [Google Scholar]
- Saadaoui, I.; Li, Z.; Wu, N. Current-state opacity modelling and verification in partially observed Petri nets. Automatica 2020, 116, 108907. [Google Scholar] [CrossRef]
- Wu, W.; Xing, Z.; Yue, H.; Su, H.; Pang, S. Petri-net-based deadlock detection and recovery for control of interacting equipment in automated container terminals. IET Intell. Transp. Syst. 2022, 16, 739–753. [Google Scholar] [CrossRef]
- Luo, J.; Liu, Z.; Wang, S.; Xing, K. Robust deadlock avoidance policy for automated manufacturing system with multiple unreliable resources. IEEE/CAA J. Autom. Sin. 2020, 7, 812–821. [Google Scholar] [CrossRef]
- Messinis, S.; Vosniakos, G.C. An agent-based flexible manufacturing system controller with Petri-net enabled algebraic deadlock avoidance. Rep. Mech. Eng. 2020, 1, 77–92. [Google Scholar] [CrossRef]
- Boucheneb, H.; Barkaoui, K.; Xing, Q.; Wang, K.; Liu, G.; Li, Z. Time based deadlock prevention for Petri nets. Automatica 2022, 137, 110–119. [Google Scholar] [CrossRef]
- Abdul-Hussin, M.H. Maximally permissive deadlock prevention controlled in FMSs based on the Siphons Petri nets. In Proceedings of the 2021 International Seminar on Machine Learning, Optimization, and Data Science (ISMODE), Jakarta, Indonesia, 29–30 January 2022; pp. 307–312. [Google Scholar]
- 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]
- 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 2022; pp. 1–6. [Google Scholar]
- Gu, C.; Ma, Z.; Li, Z.; Giua, A. Verification of Nonblockingness in Bounded Petri Nets with Min-Max Basis Reachability Graphs. IEEE Trans. Syst. Man Cybern. Syst. 2022, 52, 6162–6173. [Google Scholar] [CrossRef]
- Li, S.; Zhou, S.; Yin, L.; Jiang, R. Robust Diagnosability Analysis Using Basis Reachability Graph. IEEE Access 2023, 11, 9751–9762. [Google Scholar] [CrossRef]
- Li, X.; Liu, G.; Qin, M.; Li, Z. Robust liveness enforcement of Petri nets with uncontrollable and unobservable transitions based on structural analysis. IET Control Theory Appl. 2023, 17, 477–492. [Google Scholar] [CrossRef]
- Kryukov, O.; Voloshko, A. Structural analysis of the process based on extended Petri nets with semantic relations. In Proceedings of the International Russian Automation Conference, Sochi, Russia, 5–11 September 2021; pp. 224–236. [Google Scholar]
- Gu, C.; Li, Z.; Al-Ahmari, A. A multistep look-ahead deadlock avoidance policy for automated manufacturing systems. Discret. Dyn. Nat. Soc. 2017, 2017. [Google Scholar] [CrossRef]
- Gu, C.; Li, Z.; Wu, N.; Khalgui, M.; Qu, T.; Al-Ahmari, A. Improved multi-step look-ahead control policies for automated manufacturing systems. IEEE Access 2018, 6, 68824–68838. [Google Scholar] [CrossRef]
- Uzam, M.; Zhou, M.C. An iterative synthesis approach to Petri net-based deadlock prevention policy for flexible manufacturing systems. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 2007, 37, 362–371. [Google Scholar] [CrossRef]
- Chen, Y.F.; Li, Z.W.; Khalgui, M.; Mosbahi, O. Design of a maximally permissive liveness-enforcing Petri net supervisor for flexible manufacturing systems. IEEE Trans. Autom. Sci. Eng. 2011, 8, 374–393. [Google Scholar] [CrossRef]
- Hou, Y.F.; Barkaoui, K. Deadlock analysis and control based on Petri nets: A siphon approach review. Adv. Mech. Eng. 2017, 9, 168781401769354. [Google Scholar] [CrossRef]
- 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]
- Huang, Y.S.; Jeng, M.D.; Xie, X.; Chung, S.L. A deadlock prevention policy for flexible manufacturing systems using siphons. In Proceedings of the IEEE International Conference on Robotics and Automation, Seoul, Republic of Korea, 21–26 May 2001. [Google Scholar]
- 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]
- Yunchao, W.; Keyi, X.; Mengchu, Z.; Yanxiang, F.; Huixia, L. Robust deadlock control for automated manufacturing systems with a single type of unreliable resources. Adv. Mech. Eng. 2018, 10, 168781401877241. [Google Scholar]
- Liu, H.; Wu, W.; Su, H.; Zhang, Z. Design of optimal Petri-net controllers for a class of flexible manufacturing systems with key resources. Inf. Sci. 2016, 363, 221–234. [Google Scholar] [CrossRef]
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. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

