Proceedings of 2015 IEEE 12th International Conference on Networking, Sensing and Control Howard Civil Service International House, Taipei, Taiwan, April 9-11, 2015
Deadlock control policy for a class of automated manufacturing systems with key resources Huixia Liu
Weimin Wu
State Key Laboratory of Industrial Control Technology & Institute of Cyber-Systems and Control Zhejiang University Hangzhou, China School of Information and Electrical Engineering Ludong University Yantai, China
[email protected]
State Key Laboratory of Industrial Control Technology & Institute of Cyber-Systems and Control Zhejiang University Hangzhou, China
[email protected]
deadlock prevention [1], [3]-[4], [7]-[9], [15], and deadlock avoidance [11]-[12], [14].
Abstract—For automated manufacturing systems (AMSs) without center resources that are one-unit resources shared by two or more maximal perfect resource transition circuits, the optimal Petri net-based polynomial complexity deadlock avoidance policies are synthesized in our previous work. Based on Petri net models of AMSs, this work focuses on the deadlock control problem for AMSs with center resources. First, the concepts of key resources and key transitions are presented. It can prove that key transitions can bring AMSs with key resources into secondary-deadlock, i.e. the controlled Petri nets of AMSs with key resources are not live. Second, for a class of AMSs with key resources, secondary-deadlock can be characterized by maximal perfect control transition circuits (MPCT-circuits) that are saturated at a reachable marking of the controlled system. Then, by adding a control place and related arcs to each MPCT-circuit, secondary-deadlock can be prevented. Thereby, a deadlock control policy for a class of AMSs with center resources is synthesized. Finally, a few examples are provided to demonstrate the presented policy and used to compare them with the state-of-the-art methods. Keywords—Automated control, Petri net
I.
manufacturing
systems,
This work focuses on deadlock prevention methods. A number of such methods characterize deadlocks in terms of deadlock structures of Petri nets, such as siphons and resource-transition circuits [13]. Ezpeleta et al. described an AMS using a special class of Petri nets named by systems of simple sequential processes with resources (S3PRs) [1]. They proved that a marked S3PR net is live if and only if each minimal siphon has at least one token at each reachable marking from the initial markings. Huang et al proposed another prevention policy for S3PRs without complete computation of siphons [4]. This policy is an iterative approach and consists of two main stages. The first stage is known as siphon control, and the second stage is known as augmented siphon control. Xing et al utilized resource transition circuits (RT-circuits) to characterize deadlock states in S3PRs [12]. An RT-circuit is a circuit that only contains resource places and transitions. For a marked S3PR without center resources, Xing et al derived an optimal Petri-net-based polynomial complexity deadlock avoidance policy. For a marked S3PR with center resources, by reducing it and applying the design of an optimal deadlock avoidance policy to the reduced one, a suboptimal deadlock avoidance policy is established, and its computation is of polynomial complexity. Based on the concept of RT-circuits, Han et al proposed the concept of crucial resources and control transition circuits and established a two-stage deadlock prevention policy for S3PRs with crucial resources [3]. In [15], You et al presented a liveness-enforcing Petri net supervisor for a class of S3PRs with B-ξ-resources.
deadlock
INTRODUCTION
An automated manufacturing system (AMS) is a computer-controlled manufacturing system containing multiple concurrent flows of job processes, and often exploits shared resources to reduce the production cost. The introduction of heavy resource sharing can increase flexibility, but may lead to deadlock when two or more jobs keep waiting indefinitely for the other jobs in a production sequence to release resources. Deadlocks can reduce productivity drastically or lead to the entire stagnancy. Therefore, it is necessary to develop an efficient deadlock control policy to guarantee that deadlocks never happen in AMSs [2], [6].
By enlightening the concept of crucial resources and control transition circuits, the concepts of key resources and key transitions are first presented. It proves that key transitions can result S3PRs with key resources into secondary-deadlock, i.e. the controlled Petri nets of S3PRs with key resources are not live. Second, for a class of S3PRs with key resources, secondary-deadlock can be characterized by maximal perfect control transition circuits (MPCT-circuits) that are saturated at
Petri nets are a powerful tool for modeling and analyzing FMSs [10]. Based on Petri nets, three types of approaches are developed for AMSs, i.e., deadlock detection and recovery [5], This work was supported in part by the National Nature Science Foundation of China under Grants 61304052, 61374066 and 61273152, in part by the Outstanding Young Research Award Fund of Shandong Province under Grant BS2013DX005, in part by China Post-Doctoral Science Foundation on the 55th Grant Program under Grant 2014M551741, in part by the Doctoral Fund of Ludong University under Grant LY2013008.
978-1-4799-8069-7/15/$31.00 ©2015 IEEE
486
some reachable marking of the controlled Petri nets. Finally, by adding a control place and related arcs to each MPCTcircuit, secondary-deadlock can be prevented. Thereby, a deadlock control policy for a class of S3PRs with key resources is synthesized.
A chain in a digraph G(V, A) is a sequence of vertices α = x0x1x2…xq such that either ek = (xk−1, xk) ∈ A or ek = (xk, xk−1) ∈ A. It is simple (elementary) if it does not contain the same arcs (vertices) twice or more. It is closed if its initial and terminal vertices coincide. A path is a simple chain with ek = (xk−1, xk). A circuit c = x0x1x2…xq is a closed chain with ek = (xk−1, xk).
The rest of the paper is organized as follows. Section Ⅱ reviews preliminaries used throughout this paper. The concepts of key resources and key transitions are presented in Section Ⅲ. Based on them, maximal perfect control transition circuits are utilized to characterize secondary-deadlock. Meanwhile, a deadlock control policy is developed to make S3PRs with key resources live in Section Ⅲ. Two examples are illustrated the deadlock control policy in Section Ⅳ. Finally, Section Ⅴ concludes this paper. II.
B. S3PR Classes A system of simple sequential processes with resources (S3PR) [1] is an ordinary Petri net N = (P ∪ P0 ∪ PR, T, F) such that 1) P ∪ P0 ∪ PR is a partition such that: (1.1) P =
k ∪i= 1 Pi is
the set of operation places, where Pi ∩ Pj = ∅ for all i ≠ j; (1.2) P0 = {p10, p20, …, pk0} is the set of process idle places; (1.3) PR = {r1, r2, …, rn} is the set of resource places, where n > 0.
PRELIMINARIES
A. Basic Definitions of Petri Nets A Petri net is a 3-tuple N = (P, T, F), where P and T are finite, nonempty and disjoint sets. P is a set of places and T is a set of transitions. F ⊆ (P × T) ∪ (T × P) is called directed arcs. Given a Petri net N = (P, T, F) and a vertex x ∈ P ∪ T, the preset of x is defined as •x = {y ∈ P ∪ T | (y, x) ∈ F}, and the post set of x is defined as x• = {y ∈ P ∪ T | (x, y) ∈ F}. The notation can be extended to a set. For example, let X ⊆ P ∪ T, then •X = ∪x∈X •x and X • = ∪x∈X x•. A state machine is a Petri net in which each transition has exactly one input and one output place.
2) T =
k ∪i= 1 Ti is the set of transitions, where Ti ∩ Tj = ∅
for all i ≠ j. 3) ∀ i ∈ k, the subnet Ni generated by Pi ∪ { pi0} and Ti is a strongly connected state machine, and every circuit of Ni contains pi0. 4) ∀ p ∈ P, ∀ t1∈ •p, ∀ t2 ∈ p•, •t1 ∩ PR = t2• ∩ PR = {r}, denoted as R(p) = r. We say that p uses r. 5) The two following statements are verified: (5.1) ∀ r ∈ PR, ••r ∩ P = r•• ∩ P ≠ ∅; (5.2) ∀ r ∈ PR, •r ∩ r• = ∅; (5.3) •• (P0) ∩ PR = (P0)•• ∩ PR = ∅.
A marking or state of N is a mapping M: P → , where is the non-negative integer set. Given a place p ∈ P and a marking M, M(p) denotes the number of tokens in p at M, and we use Σp∈P M(p)p to denote vector M. Let S ⊆ P be a set of places, the sum of tokens in all places of S at M is denoted by M(S), i.e., M(S) = Σp∈S M(p). A Petri net N with an initial marking M0 is called a marked Petri net or net for simplicity, denoted as (N, M0).
Let N = (P ∪ P0 ∪ PR, T, F) be an S3PR and a transition t ∈ T, let (o)t and t(o) denote the input and output operation or process idle places of t, respectively, and (r)t and t(r) denote the input and the output resource place of t, respectively. The notion can be extended to a set. For example, let Y ⊆ T, then (o) Y = ∪t∈Y (o)t and Y(o) = ∪t∈Y t(o). For a given marking M ∈ R(N, M0), t is process-enabled at M if M((o)t) > 0, and t is resource-enabled at M if M((r)t) > 0. Only transitions that are process- and resource-enabled at the same time can be fired. For a given resource place r ∈ PR, H(r) = ••r ∩ P is called the set of holders of r.
A transition t ∈ T is enabled at a marking M, denoted by M [ t >, if ∀ p ∈ •t, M (p) > 0. An enabled transition t at M can be fired, resulting in a new marking M′, denoted by M [t > M′, where M′ (p) = M(p) −1, ∀ p ∈ •t \ t•; M′ (p) = M(p) +1, ∀ p ∈ t• \•t; and otherwise M′(p) = M(p), ∀p ∈ P − {•t \ t•, t• \•t}. A sequence of transitions α = t1t2…tk, ti ∈ T, i ∈ k = {1, 2, …, k}, is feasible from a marking M, if there exist Mi [ ti >Mi+1, i ∈ k, where M1 = M, and Mi is called a reachable marking from M. Let R(N, M0) denote the set of all reachable markings of N from M0. A transition t is live if ∀ M ∈ R(N, M0), ∃ M′ ∈ R(N, M) such that M′ [t > holds. A net is live if every transition is live.
Let N = (P ∪ P0 ∪ PR, T, F) be an S3PR, and x and y be two nodes in P ∪ T. If there exists a simple path in N from x to y with length greater than 1, which does not contain any place in P0 ∪ PR, we say that x is previous to y in N. This fact is denoted as x < y. Given Z ⊆ (P ∪ T), x is previous to Z in N, denoted as x < Z, if there exists z ∈ Z, x < y. C. Resource Transition Circuits Definition 1[12]: An S3PR N = (P ∪ P 0 ∪ PR, T, F) is a digraph in which the vertex set consists of the set of places P ∪ P 0 ∪ PR and the set of transitions T. Let θ be a circuit in N. θ is called a resource transition circuit (RT-circuit) if it contains only resource places and transitions. Let ℜ[θ] and ℑ[θ] denote the sets of all resource places and all transitions in θ, respectively.
Two marked Petri nets (Ni, Mi0) = (Pi, Ti, Fi, M i0), i ∈ 2, are compatible if ∀ p ∈ P1 ∩ P2, M10(p) = M20(p). The composition of two compatible marked Petri nets (N1, M10) and (N2, M20) is a marked Petri net (N1, M10) ⊗ (N2, M20) = (P, T, F, M0), where P = P1 ∪ P2, T = T1 ∪ T2, F = F1 ∪ F2, and M0(p) = M i0(p) if p ∈ Pi, i ∈ 2.
487
Definition 2[12]: An RT-circuit θ is perfect if ((o)ℑ[θ])• = ℑ[θ].
Definition 7: Let (N, M0) = (P ∪ P0 ∪ PR, T, F, M0) be a marked S3PR, r ∈ PR, and a sequence of MPRT-circuits θ1, θ2, ..., θm (m ≥ 2) in Θ that satisfy any two θi and θj do not contain each other and ℜ[θi] ∩ ℜ[θj] ≠ ∅. r is called a key resource if {r} = ℜ[θ1] ∩ ℜ[θ2] ∩ ... ∩ ℜ[θm] and M0(r) = 1. Denote ℜk as the set of all key resources.
Let Ω(R) denote the set of all perfect RT-circuits (PRTcircuits) with resource set R = ℜ[θ], and θ1, θ2 ∈ Ω(R). Then θ1 ∪ θ2 ∈ Ω(R). Therefore, Ω(R) contains a unique maximal PRT-circuit (MPRT-circuit), denoted as δ(R). Let Θ denote the set of all MPRT-circuits in an S3PR throughout the paper.
By Definition 7, it is natural that a key resource is a center resource, but otherwise not.
Definition 3[12]: An MPRT-circuit θ is said to be saturated under a marking M ∈ R(N, M0) iff M((o)ℑ[θ]) = M0(ℜ[θ]).
Definition 8: Given (N, M0) = (P ∪ P0 ∪ PR, T, F, M0) be a marked S3PR and a sequence of MPRT-circuits θ1, θ2, ..., θm (m ≥ 2) in Θ. Let T = {t | t ∈ ℑ[θi] ∩ I[θi+1] , 0 ≤ i ≤ m – 1}. We call t ∈ T a key transition if M0((r)t) = 1. Denote ℑk the set of all key transitions in (N, M0).
Definition 4[12]: Let θ be an MPRT-circuit and t a transition in a marked S3PR (N, M0). t is called an input transition of θ iff its firing increases tokens in (o)ℑ[θ] and an output transition of θ iff its firing decreases tokens in (o)ℑ[θ]. Let I[θ] and O[θ] denote the sets of input and output transitions of θ, respectively.
Example 1: Consider a marked S3PR shown in Fig. 1. There are three MPRT-circuits in this net: θ1 = r1t22r2t12r1, θ2 = r2t23r3t13r2 and θ3 = θ1 ∪ θ2. By Definition 7, r2 is a key resource. Since t12 ∈ ℑ[θ1] and t12 ∈ I[θ2], t12 is a key transition by Definition 8. Similarly, t23 is also a key transition.
Proposition 1[12]: A marked S3PR (N, M0) is live if and only if no MPRT-circuit of N is saturated at any reachable marking of (N, M0). D. Petri Net Controllers Definition 5[12]: Let (N, M0) = (P ∪ P0 ∪ PR, T, F, M0) be a marked S3PR. A Petri net controller for (N, M0) is defined as follows. (C1, M1) ≡ (PC1, TC1, FC1, M1) = (∪θ∈Θ{cθ}, ∪θ∈ΘTθ, ∪θ∈ΘFθ, M1) where cθ is a control place to θ, PC1 = {cθ | θ ∈ Θ}, TC1 = ∪ θ ∈ ΘTθ, Tθ= I[θ] ∪ O[θ], FC1 = ∪θ ∈ Θ Fθ, Fθ = {(cθ, t) | t ∈ I[θ]} ∪ {(t, cθ) | t ∈ O[θ]}, and M1(cθ) = M0(ℜ[θ]) – 1. Denote the controlled Petri net (NC1, MC1) ≡ (N, M0) ⊗ (C1, M1) = (P ∪ P0 ∪ PR ∪ PC1, T, F ∪ FC1, MC1), where MC1(p) = M0(p), ∀ p ∈ P ∪ P0 ∪ PR; MC1(p) = M1(p), ∀ p ∈ PC1.
Let
Fig. 1. A marked S3PR (N, M0).
Remark: it is easy to verify that the concept of key resources extends that of crucial resources [3] and B-ξresources [15].
(c)
t denote the input control place of t. For a given marking M ∈ R(NC1, MC1), t is control-enabled at M if M((c)t) > 0. Only transitions that are process-, resource- and controlenabled at the same time can be fired in (NC1, MC1).
By Definition 8, a conclusion can be drawn as follows. Lemma 1: Let t be a key transition. Then there exists a key resource r such that t ∈ r•.
Definition 6[12]: A resource in a marked S3PR (N, M0) is called as a center resource if it is an one-unit resource shared by two or more MPRT-circuits that do not contain each other.
Proof: Let (r)t = r. By Definition 8, there exists an MPRTcircuit θ such that t ∈ I[θ], which shows that r ∈ ℜ[θ]. On the other hand, there exists an MPRT-circuit θ′ such that t ∈ ℑ[θ′], which shows that r ∈ ℜ[θ′]. Therefore, r is a key resource. ▋
Proposition 2[12]: If a marked S3PR (N, M0) does not contain center resources, the Petri net controller (C1, M1) for (N, M0) defined in Definition 5 is the maximally permissive deadlock-avoidance controller. III.
Lemma 2: Let (N, M0) = (P ∪ P0 ∪ PR, T, F, M0) be a marked S3PR, θ, θ1 and θ2 are MPRT-circuits that satisfy θ = θ1 ∪ θ2, ℜ[θ1] ∩ ℜ[θ2] ={r}, and M0(r) = 1. Add two controllers (Cθ1, Mθ1) and (Cθ2, Mθ2) to θ1 and θ2 by Definition 5, respectively. Then θ is not saturated at any reachable marking of (NC1, MC1) = (N, M0) ⊗ (Cθ1, Mθ1) ⊗ (Cθ2, Mθ2).
DEADLOCK CONTROL POLICY FOR A CLASS OF S3PRS WITH KEY RESOURCES
A. Key Resources and Key Transitions In this subsection, we will present the concepts of key resources and key transitions and analyze the reason of emerging secondary-deadlock by an example.
Proof: Since θ = θ1 ∪ θ2 and ℜ[θ1] ∩ ℜ[θ2] ={r}, (o)ℑ[θ] = ℑ[θ1] ∪ (o)ℑ[θ2] and (o)ℑ[θ1] ∩ (o)ℑ[θ2] = ∅. Thus, ∀ M ∈ R(NC1, MC1), M((o)ℑ[θ]) = M((o)ℑ[θ1]) + M((o)ℑ[θ2]),
(o)
488
M((o)ℑ[θ1]) ≤ M0(ℜ[θ1]) − 1 and M((o)ℑ[θ2]) ≤ M0(ℜ[θ2]) − 1 by Definition 5. Thereby, M((o)ℑ[θ]) ≤ M0(ℜ[θ1]) − 1 + M0(ℜ[θ2]) − 1 = M0(ℜ[θ]) − 1 due to ℜ[θ1] ∩ ℜ[θ2] ={r} and ▋ M0(r) = 1.
all MPCT-circuits in a controlled Petri net (NC1, MC1) throughout the paper. Definition 12: An MPCT-circuit ψ is said to be saturated under a marking M ∈ R(NC1, MC1) iff M((o)ℑ[ψ]) = MC1(℘[ψ]).
Definition 9: An MPRT-circuit is called basic if it cannot be the union of two or more MPRT-circuits with a key resource.
Definition 13: Let ψ be an MPCT-circuit and t a transition in a controlled Petri net (NC1, MC1). t is called an input transition of ψ iff its firing increases tokens in (o)ℑ[ψ] and an output transition of ψ iff its firing decreases tokens in (o)ℑ[ψ]. Let I[ψ] and O[ψ] denote the sets of input and output transitions of ψ, respectively.
By Lemma 2, when preventing the deadlock (also called as first-deadlock) of S3PRs with key resources, we only add controllers to all basic MPRT-circuits. There still exists deadlock (called as secondary-deadlock) in the controlled Petri nets of S3PRs with key resources, which is shown by the following example.
Let (N, M0) = (P ∪ P0 ∪ PR, T, F, M0) be a marked S3PR with key resources. ∀ r ∈ ℜk, t ∈ r•, if t is a key transition, Σ = {θ | t ∈ I[θ]} ≠ ∅ by Definition 8. Suppose that ∀ t′ ∈ t(o)• and θ ∈ Σ, t′ is an output transition of θ, i.e., t′∈ O[θ]. We call the supposition as Key-condition. In what follows, we will explore marked S3PRs with key resources that satisfy the Keycondition.
Example 2: By Definition 9, θ1 and θ2 are basic MPRTcircuits in the S3PR shown in Fig. 1. Add two control places C1 and C2 into θ1 and θ2, respectively, and the obtained controlled Petri net (NC1, MC1) is shown in Fig. 2. It is easy to verify that θ3 is not saturated at any reachable marking of (NC1, MC1).
Let (N, M0) be a marked S3PR with key resources that satisfies the Key-condition, and (NC1, MC1) be the controlled Petri net obtained by only adding a controller to basic MPRTcircuit. For (NC1, MC1), there are three conclusions as follows. Lemma 3: Let ψ be a MPCT-circuit in (NC1, MC1) and M ∈ R(NC1, MC1). If ψ is saturated at M, then all transition on ψ are dead at M. Proof: The proof is similar to that of Lemma 2 in [12]. ▋ Lemma 4: Let M ∈ R(NC1, MC1). If there exists one transition t that is process-enabled but cannot fire at M, there exists an MPCT-circuit ψ such that t ∈ ℑ[ψ] and ψ is saturated at M.
Fig. 2 A controlled Petri net (NC1, MC1)
In (NC1, MC1), two key transitions t12 and t23 combine with two control places C1 and C2 to form a new resource waiting indefinitely, that is, t12 and t23 cannot fire. For example, M = 7p10 + 2p11 + 6p20 + 3p23 + r2 is a reachable marking of (NC1, MC1), and t12 and t23 cannot fire at M.
Proof: By the Key-condition, if a transition t is processenabled but cannot fire at M ∈ R(NC1, MC1), t is a key transition. Thus it can construct one MPCT-circuit ψ such that t ∈ ℑ[ψ], and the construction is similar to that of Lemma 3 in [12]. ▋
B. Maximal Perfect Control Transition Circuits In Fig. 2, there exists a deadlock in (NC1, MC1) that can be characterized by a new circuit C1t23C2t12C1. The concept of control transition circuits is presented as follows.
According to Lemma 3 and Lemma 4, all dead markings of (NC1, MC1) can be characterized by saturated MPCT-circuits. Add a controller to each MPCT-circuit and obtain a new Petri net controller (C2, M2) (In Definition 5, replace Θ, θ, I[θ] and O[θ] by Ψ, ψ, I[ψ] and O[ψ], respectively). The controlled Petri net (NC2, MC2) = (NC1, MC1) ⊗ (C2, M2) is called as secondary controlled Petri net.
Definition 10: Let ψ be a directed circuit in the controlled Petri net (NC1, MC1). ψ is called a control transition circuit (CT-circuit) if it contains only control places and transitions. Let ℘[ψ] and ℑ[ψ] denote the sets of all control places and all transitions in ψ, respectively.
Theorem 1: (NC2, MC2) is live if M0(ℜ[θ]) ≥ 3 for each θ ∈ Θ in (N, M0). Proof: Since M0(ℜ[θ]) ≥ 3 for any θ ∈ Θ, MC1(℘[ψ]) ≥ 2 for each MPCT-circuit ψ in (NC1, MC1). Thereby, (NC1, MC1) can be considered as a marked S3PR without center resource. By applying the deadlock control policy proposed in [12], (NC2, MC2) is live. ▋
Definition 11: A CT-circuit ψ is perfect if ((o)ℑ[ψ])• = ℑ[ψ]. Let Ω(C) denote the set of all perfect CT-circuits (PCTcircuits) with control place set C = ℘[ψ], and ψ1, ψ2 ∈ Ω(C). Then ψ1 ∪ ψ2 ∈ Ω(C). Therefore, Ω(C) contains a unique maximal PCT-circuit (MPCT-circuit). Let Ψ denote the set of
489
C. Deadlock Control Policy for S3PRs with Key Resources Based on the above discussion in the subsection A and B, a new deadlock prevention policy for S3PRs with key-resources satisfying the Key-condition is synthesized. Algorithm Given an S3PR (N, M0), Step 1: Verify whether (N, M0) can satisfy the Keycondition. If it does not satisfy the Key-condition, exit; Step 2: Compute key resources and key transitions; Step 3: Synthesize the controlled S3PRs (NC1, MC1) by Definition 5; Step 4: Find all MPCT-circuits in (NC1, MC1); Fig. 4. A marked S3PR (N, M0).
Step 5: Add a controller to each MPCT-circuit and obtain the secondary controlled Petri net (NC2, MC2); Step 6: Output (NC2, MC2); According to Theorem 1, (NC2, MC2) is live. IV.
EXAMPLES
Example 3: In Fig. 1, there are two MPRT-circuits θ1 = r1t22r2t12r1 and θ2 = r2t23r3t13r2 that share the key resource r2. t12 and t23 are key transitions. For t12, t12 ∈ I[θ2] and t13 = t12(o)• ∈ O[θ2]; for t23, t23 ∈ I[θ1] and t22 = t23(o)• ∈ O[θ1]. Thereby, the S3PR in Fig. 1 satisfies the Key-conditions. In Fig. 2, ψ = C1t23C2t12C1 is the MPCT-circuit in (NC1, MC1). Add a controller to ψ and obtain the secondary controlled Petri net (NC2, MC2) shown in Fig. 3. It is easy to verify that (NC2, MC2) is live and has 148 reachable markings. The methods proposed in [12] and [15] can allow 57 reachable markings.
Fig. 5. A controlled Petri net (NC1, MC1).
It is easy to verify that (NC2, MC2) in Fig. 6 is live and has 179 reachable markings. The methods proposed in [12] and [15] can allow 64 reachable markings.
Fig. 3. A secondary controlled Petri ne (NC2, MC2).
Example 4: Consider a marked S3PR shown in Fig. 4. In Fig. 4, θ1 = r1t8r3t3 r2t2r1 and θ2 = r3t7r4t4r3 share the key resources r3, and t3 and t7 are key transitions. For t3, t3 ∈ I[θ2] and t4 = t3(o)• ∈ O[θ2]; for t7, t7 ∈ I[θ1] and t8 = t1(o)• ∈ O[θ1]. Thereby, the marked S3PR in Fig. 4 satisfies the Keyconditions.
Fig. 6. A secondary controlled Petri net (NC2, MC2).
Remark: The proposed key resources can extend crucial resources [3], so the proposed work can extend that of [3].
Add two controllers to θ1 and θ2 according to Definition 5, and obtain the controlled Petri net (NC1, MC1) shown in Fig. 5.
V.
It can be computed that ψ = C1t7C2t5C1 is the MPCTcircuit in (NC1, MC1). Add a controller to ψ and obtain the secondary Petri net (NC2, MC2) shown in Fig. 6.
CONCLUSIONS
This work focuses on deadlock problem on automated manufacturing systems with key resources. Based on Petri net models of AMSs, the concepts of key resources and key
490
transitions are first presented. A key resource is an one-unit resource shared by two or more maximal perfect resource transition circuits whose shared resources are only this resource. Key transitions are some output ones of key resources, which results AMSs with key resources into secondary-deadlock, i.e. the controlled systems of AMSs with key resources are not live. For a class of AMSs with key resources that satisfies the Key-condition, secondary-deadlock can be characterized by maximal perfect control transition circuits (MPCT-circuits) that are saturated at a reachable marking of the controlled system. A control transition circuit is a circuit that contains control places and transitions in the controlled systems. Then, by adding a control place and related arcs to each MPCT-circuit, secondary-deadlock can be prevented. Thereby, a deadlock control policy for a class of AMSs with key resources is synthesized.
[5]
Our future research will be carried out to extend our method to more general Petri nets. How to design optimal Petri net controllers with polynomial time complexity should be considered in the future.
[10]
[6]
[7]
[8]
[9]
[11]
[12]
References [1]
[2]
[3]
[4]
J. Ezpeleta, J. M. Colom, and J. Martinez, “A Petri net based deadlock prevention policy for flexible manufacturing systems”, IEEE Trans. Robot. Automat, vol. 11, no. 2, pp. 173-184, Apr. 1995. M. Fanti and M. C. Zhou, “Deadlock control methods in automated manufacturing systems”, IEEE Trans. Syst., Man, Cybern. A, Syst., Humans, vol. 34, no. 1, pp. 5-22, 2004. L. B. Han, K. Y. Xing, M. C. Zhou, H. X. Liu, and F. Wang, “Two-stage deadlock prevention policy based on resource-transition circuits”, 8th IEEE International Conference on Automation Science and Engineering, Seoul, Korea, pp. 20-24, 2012. Y. S. Huang, M. D. Jeng, X. L. Xie, and S. L. Chung, “Deadlock prevention policy based on Petri nets and siphons”, Int. J. Prod. Res., vol.39, no.2, pp. 283-305, 2001.
[13]
[14]
[15]
491
Y. S. Huang, Y. L. Pan, and P. J. Su, “Transition-based deadlock detection and recovery policy for FMSs using graph technique,” ACM Trans. Emb. Comp. Syst., vol 12, no. 1, pp. 34-46, 2013. Z. W. Li, N. Q. Wu, and M. C. Zhou, “Deadlock control of automated manufacturing systems based on Petri nets-a literature review”, IEEE Trans. Syst., Man, Cybern. C, Appl., Rev., vol. 42, no. 4, pp. 437-462, 2012. H. X. Liu, K. Y. Xing, M. C. Zhou, L. B. Han, and F. Wang, “Transition Cover-Based Design of Petri Net Controllers for Automated Manufacturing Systems”, IEEE Trans. Syst., Man, Cybern, Systems, vol. 44, no. 2, pp. 196-208, 2014. H. X. Liu, K. Y. Xing, W. M. Wu, M. C. Zhou, and H. L. Zou, “Deadlock Prevention for Flexible Manufacturing Systems via Controllable Siphon Basis of Petri Nets”, IEEE Trans. Syst., Man, Cybern, Systems, on line. H. X. Liu, W. M. Wu, “An efficient deadlock prevention policy based on selective transition covers for flexible manufacturing systems”, IEEE 11th international conference on Networking, Sensing and Control(ICNSC), Miami, pp. 484-489, 2014。 T. Murata, “Petri Nets: Properties, analysis, and applications”, Proc. IEEE, vol. 77, no. 4, pp. 541-580, Dec. 1989. N. Q. Wu, M. C. Zhou and Z. W. Li, “Resource-oriented Petri net for deadlock avoidance in flexible assembly systems,” IEEE Trans. Syst., Man, Cybern. A, Syst., Humans, vol. 384, no. 1, pp. 56-69, Jan, 2008. K. Y. Xing, M. C. Zhou, H. X. Liu, and F. Tian, “Optimal Petri-netbased polynomial-complexity deadlock-avoidance policies for automated manufacturing systems”, IEEE Trans. Syst., Man, Cybern, A, Syst., Humans, vol. 39, no. 1, pp. 188-199, Jan. 2009. K. Y. Xing, M. C. Zhou, F. Wang, H. X. Liu, and F. Tian, “Resource transition circuits and siphons for deadlock control of automated manufacturing systems,” IEEE Trans. Syst., Man, Cybern. A, Syst., Humans. vol. 41, no. 1, pp. 74-84, 2011. K. Y. Xing, L. B. Han, M. C. Zhou, and F. Wang, “Deadlock-Free Genetic Scheduling Algorithm for Automated Manufacturing Systems Based on Deadlock Control Policy,” IEEE Trans. Syst., Man, Cybern. B, Cybern. vol.42, No. 3, pp. 603-615, June, 2012. D. You, S. G. Wang, M. C. Zhou, and W. H. Wu, “Monitor-based liveness-enforcing Petrin net supervisors for flexible manufacturing systems”, accepted by IEEE Trans. Syst., Man, Cybern, Systems.