1 Introduction
As discrete event models, Petri nets are commonly used in the framework of supervisory control theory (SCT) [21, 22, 3]. From the point of view of computational efficiency, Petri nets have several advantages over simpler models such as automata [6, 19, 20]: since states in Petri nets are not explicitly represented in the model in many cases, and structural analysis and linear algebraic approaches can be used without exhaustively enumerating the state space of a system.
A suite of supervisory control approaches in discrete event systems focuses on an essential property, namely nonblockingness [21, 22, 10, 7]. As defined in [21], nonblockingness is a property prescribing that all reachable states should be coreachable to a set of final states representing the completions of prespecified tasks. Consequently, to verify and ensure the nonblockingness of a system is a problem of primary importance in many applications and should be addressed with stateoftheart techniques.
The verification of nonblockingness in automata can be solved in a relatively straightforward manner. The authors in [16] address several sufficient conditions for nonblockingness verification. However, they are not very suitable for systems that contain complex feedback paths; in [14, 13], a method called hierarchical interfacebased supervisory control, i.e., to break up a plant into two subsystems and restrict the interaction between them, is developed to verify if a system is nonblocking; based on the state tree structure, the work in [17] studies an efficient algorithm for nonblocking supervisory control design in reasonable time and memory cost.
In Petri net models, the works in [6, 7] study the nonblockingness verification and enforcement from the aspect of Petri net languages. However, these methods rely on the construction and analysis of the reachability graph, which is practically inefficient; based on the concept of theory of regions[24], a compact maximally permissive controller is investigated in [5] to ensure the nonblockingness of a system. However, it still requires an exhaustive enumeration of the state space; for a class of Petri nets called Gsystems, the work in [26] reports a deadlock prevention policy that can usually lead to a nonblocking supervisor with high computational efficiency but cannot guarantee maximally permissive behavior.
As is known, the difficulty of enforcing nonblockingness lies in the fact that the optimal nonblocking supervisory control problem is NPhard [11]. Moreover, the problem of efficiently verifying nonblockingness of a Petri net without constructing its reachability graph remains open to date. By this motivation, in this paper, we aim to develop a computationally efficient method for nonblockingness verification in Petri nets.
A statespace abstraction technique in Petri nets, called basis reachability graph (BRG) approaches, was recently proposed in [2, 1]. In these approaches, only a subset of the reachable markings, called basis markings, are enumerated. This method can be used to solve marking reachability [18], diagnosis [2, 1] and opacity problems [23] efficiently. Thanks to the BRG, the state explosion problem can be mitigated and the related control problems can be solved efficiently. The BRGbased methods are semistructural since only basis markings are explicitly enumerated in the BRG while all other reachable markings are abstracted by linear algebraic equations.
On the other hand, in our previous work [12] we show that the standard BRGbased approach may not be directly used for the nonblockingness verification due to the possible presence of livelocks and deadlocks. In particular, livelocks describe an undesirable nondead strongly ergodic behavior such that the system continuously evolves without ever reaching its prespecified task. Thus, a Petri net is blocking if a livelock that contains no final markings is reachable. However, the set of markings that form a livelock is usually hard to characterize and is not encoded in the classical BRG of the system. In our preliminary work in [12], we proved that for a deadlockfree Petri net, nonblockingness verification can be done by constructing a structure namely the expandedBRG and checking nonblockingness of each node it contains. However, the efficiency of this approach needs to be further improved.
For a system that is not deadlockfree, a dead marking in the state space characterizes a terminal node, from which the system cannot further advance [4, 15]. If there exists a dead marking that is not final (referred to it as a nonfinal deadlock), the system is verified to be blocking.
Inspired by the classical BRGbased methodology, in this paper, we develop a novel semistructural approach to verify the nonblockingness of a Petri net. The contribution of this paper consists of three aspects:

First, we define a new structure called a minimax basis reachability graph (minimaxBRG) and introduce a property called unobstructiveness. In plain words, a minimaxBRG is unobstructed if all nodes it contains are nonblocking. Analogous to BRG, the advantages of this method are that only part of the state space, namely minimax basis markings, is constructed and all other markings can be characterized as the integer solutions of a linear constraint set.

Second, owing to properties of the minimaxBRG, when a plant net is known to be deadlockfree, we propose a sufficient and necessary condition for nonblockingness verification, that is, a deadlockfree Petri net is nonblocking if and only if its minimaxBRG is unobstructed.

Finally, we provide for acyclic nets a characterization of deadlock. This allows us to address with the same technique we use to compute the minimaxBRG for the problem of deadlock analysis. Specifically, for a system that may contain deadlocks, the set of nonfinal dead markings can be computed and analyzed based on the markings in the corresponding minimaxBRG. Hence, the nonblockingness verification of nets that are not deadlockfree can be done by first determining the nonfinal deadlocks followed by checking the unobstructiveness of its minimaxBRG. The approach we developed does not require exhaustive exploration of the state space and therefore achieves significant practical efficiency.
The rest of the paper is organized as follows. Section II recalls some basic concepts and formalisms used in the paper. Section III dissects the nonblockingness verification problem. Section IV develops a novel structure named the minimaxBRG and exposes a sufficient and necessary condition for nonblockingness verification of a deadlockfree system. In Section V, we generalize the above results for the systems that are not deadlockfree. Numerical analyses are given in Section VI. Section VII draws conclusions and discusses future work.
2 Preliminaries
In this section, we recall the main notions related to automata[25], Petri nets [20], and basis markings [18, 2, 1] used in the paper.
2.1 Automata
An automaton is a fivetuple , where is a set of states, is an alphabet of events, is a state transition function, is an initial state and is a set of final states (also called marker states in [21]). can be extended to a function .
A state is reachable if for some it is coreachable if there exists such that . An automaton is said to be nonblocking if any reachable state is coreachable.
2.2 Petri Nets
A Petri net is a fourtuple , where is a set of places (graphically represented by circles) and is a set of transitions (graphically represented by bars). and () are the pre and post incidence functions that specify the arcs directed from places to transitions, and vice versa in the net, respectively. The incidence matrix of is defined by . A Petri net is acyclic if there are no oriented cycles in its structure.
Given a Petri net and a set of transitions , the induced subnet of is a net resulting by removing all transitions in and corresponding arcs from , denoted as where and () is the restriction of () to and . The incidence matrix of is denoted by .
A marking of a Petri net is a mapping: that assigns to each place of a Petri net a nonnegative integer number of tokens. The number of tokens in a place at a marking is denote by . A Petri net with an initial marking is called a net system, denoted by .
For a place , the set of its input transitions is defined by and the set of its output transitions is defined by . The notions for and are analogously defined.
A transition is enabled at a marking if , denoted by . If is enabled at , the firing of yields marking , which is denoted as . A marking is dead if for all , .
Marking is reachable from if there exist a feasible firing sequence of transitions and markings such that holds. Given a transition sequence , is a function that associates to
a vector
, called the firing vector of . Let be the inverse function of , namely for , .The set of markings reachable from is called the reachability set of , denoted by . A net system is said to be bounded if there exists an integer such that for all and for all , holds.
The following wellknown result shows that in acyclic nets, reachability can be characterized (necessary and sufficient condition) in simpler algebraic terms.
Proposition 1.
Let denote a Petri net system with initial marking and a set of final markings . can be either given by explicitly listing all its members, or characterized by a generalized mutual exclusion constraint (GMEC)[8]. A GMEC is a pair , where and , that defines a set of markings
Hereinafter, we adopt the GMECbased representation to characterize in , i.e., let .
Definition 1.
A marking of a Petri net system is said to be blocking if no final marking is reachable from it, i.e., ; otherwise is said to be nonblocking. System is nonblocking if no reachable marking is blocking; otherwise is blocking.
2.3 Basis Marking and Basis Reachability Graph (BRG)
Definition 2.
Given a Petri net , transition set can be partitioned into , where the disjoint sets and are called the explicit transition set and the implicit transition set, respectively. A pair is called a basis partition of if the induced subnet of is acyclic. We denote and . Let be the incidence matrix of the induced subnet of .
Note that the notion of BRG [2, 1]
is first proposed in the context of events (transitions) classified as being “
observable” and “unobservable”. However, a generalized version of this concept based on “explicit” and “implicit” transitions is presented in [18].Definition 3.
Given a Petri net , a basis partition , a marking , and a transition , we define
as the set of explanations of at , and we define
as the set of explanation vectors; meanwhile we define
as the set of minimal explanations of at , and we define
as the corresponding set of minimal explanation vectors.
Definition 4.
Given a net system and a basis partition , its basis marking set is defined as follows:

;

If , then for all , for all , .
A marking in is called a basis marking of with respect to .
Definition 5.
Given a bounded net with an initial marking and a basis partition , its basis reachability graph is a nondeterministic finite state automaton output by Algorithm 2 in [18]. The BRG is a quadruple , where

the state set is the set of basis markings;

the event set is the set of pairs ;

the transition relation ;

the initial state is the initial marking .
We extend in the usual way the definition of transition relation to consider a sequence of pairs and write to denote that from sequence yields .
Definition 6.
Given a net , a basis partition , and a basis marking , we define
.
as the implicit reach of .
Since the induced subnet is acyclic, by Proposition 1, it holds that:
3 BRG and Nonblockingness Verification
The efficient verification of nonblockingness in Petri nets without an exhaustive enumeration of the state space remains an open issue. To attempt to discover a solution to the nonblockingness verification problem by using the BRGbased method, in [12], we first define the set of icoreachable markings and introduce the notion of unobstructiveness of a BRG.
Definition 7.
Consider a bounded Petri net system with the set of basis markings . The set of icoreachable markings is defined as
Definition 8.
Consider a BRG and a set of icoreachable markings . is said to be unobstructed if for all there exist in and such that . Otherwise it is obstructed.
Proposition 2 exposes how this property can be verified. Such a property is similar to the nonbockingness of Petri nets. For with and , the unobstructiveness of a BRG is equivalent to nonblockingness of the corresponding Petri net, since in this case the BRG and reachability graph are isomorphic.
Proposition 2.
Given a Petri net system , its BRG is unobstructed if and only if all basis markings are nonblocking, i.e., for all .
A sufficient condition is further proved in [12], as shown in Corollary 1, to determine the nonblockingness of a Petri net.
Corollary 1.
A Petri net system is blocking if its BRG is obstructed.
From another perspective, the BRG of is unobstructed if is nonblocking. However, the converse is not true, i.e., the fact that a BRG of a net is unobstructed does not necessarily imply that the net is nonblocking. To help clarify it, an example is provided in the following.
Example 1.
Consider a Petri net system in Fig. 1 with and . In this net, is set to be a parameter (). Assuming , the BRG of this net (regardless of the value of ) is also shown in the same figure, where is the minimal explanation vector of at basis marking . The reachability graphs for and are shown in Fig. 2.
Since all three basis markings, i.e., , and are nonblocking in these two cases, according to Proposition 2, the BRG of the net is unobstructed regardless the value of . is deadlockfree if and not deadlockfree if . When the net is blocking due to the livelock composed by two markings and . When the net is also blocking because of the nonfinal deadlock .
Example 1 shows the fact that all basis markings are unobstructed does not imply that all reachable markings are nonblocking, i.e., the unobstructiveness of a BRG does not necessarily imply the nonblockingness of the corresponding Petri net system. Specifically, as we mentioned in Section 1, two types of blocking markings should be particularly treated to conclude nonblockingness correctly:

dead but nonfinal;

livelocks, i.e., ergodic stronglyconnected components of nondead markings.
Notice that the occurrence of such livelock and deadlock problems stems from the abstraction of information inherent in the basis marking approach, and the unobstructiveness of a BRG may not completely characterize the nonblockingness of the Petri net. Therefore, the classical structure of BRGs needs to be revised to encode additional information for checking nonblockingness.
As a countermeasure, preliminary results are presented in [12] to show how it is possible to modify the BRG to detect livelocks. In more detail, a structure named the expanded BRG is proposed. It expands the BRG such that all markings in reached by firing a sequence transitions ending with an explicit transition are included. The set of markings in an expanded BRG is denoted as the expanded basis marking set
Although the expandedBRGbased approach can be used to verify nonblockingness of a deadlockfree net, its efficiency needs to be further improved, since to enumerate all explanations at all basis and extended basis markings is still quite exhaustive. Meanwhile, the deadlock problem is not addressed. In the rest of this paper, an efficient approach based on a more compact structure, namely minimaxBRG, is proposed to solve the nonblockingness verification problem.
For better organization, these two potential problems are separately treated in the following sections. In Section 4, we focus on the detection of livelocks that cause blocking, while we assume that the plant net is preknown to be deadlockfree. The proposed method is then generalized to nets that are not necessarily deadlockfree in Section 5.
4 Verifying Nonblockingness of DeadlockFree Petri Nets Using MinimaxBRGs
4.1 Maximal Explanations and Minimax Basis Markings
We first define maximal explanations and maximal explanation vectors as follows.
Definition 9.
Given a Petri net , a basis partition , a marking , and a transition , we define
as the set of maximal explanations of at , and
as the corresponding set of maximal explanation vectors.
From the standpoint of partial order set (poset), the set of maximal explanation vectors is the set of maximal elements in the corresponding poset .
Note that, as is the case for the set of minimal explanations [18, 2, 1], may not be a singleton. In fact, there may exist multiple maximal firing sequences that enable an explicit transition . However, similar to a result in [9], holds if the implicit subnet of the system belongs to the class of conflictfree Petri nets.
Definition 10.
A Petri net is conflictfree if for all , .
Theorem 1.
Consider a net system with a basis partition , whose implicit subnet is conflictfree. For all and , .
Proof.
The thread of this proof simply follows the proof of Theorem 4 in [9], considering as and the implicit subnet being backwardconflictfree (for all , ) as conflictfree. ∎
Algorithm 1 can be used to compute for a given marking and an explicit transition . It consists of two stages, namely lines 112 (stage 1) and lines 1329 (stage 2). Stage 1 follows the procedure of lines 112 in Algorithm 1 in [18]. As a breadthfirstsearch technique, this part of the algorithm iteratively enumerates a set of firing vectors such that is an explanation of , i.e., .
However, submatrix may not contain all explanation vectors at the end of stage 1, and hence we cannot obtain by directly collecting all the maximal rows in . In stage 2, we set equals to the row number of and add each of the rows in to each of the rows in . If an obtained new row is nonnegative and does not equal to any of the rows in , it is then recorded in and will be updated. In fact, a new explanation vector of at can be collected based on , since there exists a firing sequence such that .
Stage 2 ends when equals to , meaning that submatrix reaches a fixed point. Finally, the set of maximal explanations is obtained by collecting all the maximal rows in submatrix .
Now we define minimax basis markings in an iterative way as follows.
Definition 11.
Given a net system with a basis partition , its minimax basis marking set is recursively defined as follows

;

, , .
A marking in is called a minimax basis marking of the net system with .
In practice, the set of minimax basis markings is a smaller subset of reachable markings that contains the initial marking and is closed by reachability through a sequence that contains an explicit transition and one of its maximal or minimal explanations.
4.2 Minimax Basis Reachability Graph
Definition 12.
Given a bounded net system and a basis partition , its minimaxBRG is a nondeterministic finite state automaton computed by Algorithm 2, where

is the set of minimax basis markings;

is the set of pairs ;

is the transition relation ;

is the initial marking.
We extend the definition of transition relation for sequences of pairs and write to denote that from sequence yields in .
Algorithm 2 computes a minimaxBRG. The set is initialized at . At the end of the procedure, it contains the set of minimax basis markings. For all untested markings , i.e., those with no tag, and for all explicit transitions , we check whether there exist explanation vectors or . If such explanation vectors exist, we compute all minimax basis markings (i.e., ) and store them in . Moreover, the set of pairs and transition relations between and are stored in and , respectively.
Algorithm 2 stops when there is no unchecked marking in . Comparing with the construction of the BRG, where one needs to compute the minimal explanation vectors[2, 1], Algorithm 2 requires to compute all markings that are reachable from the initial marking by firing not only all minimal explanation vectors but also all maximal ones. Note that for a bounded net system, holds. As for the complexity of Algorithm 2, we point out that the minimaxBRG of a net system may be isomorphic to its reachability graph in the worst case, e.g., when and . However, numerical results (e.g., see Section 6) shows that in many practical cases holds and therefore achieves practical efficiency.
Example 2.
In the minimaxBRG, at , there are two explanation vectors for : (minimal) and (maximal). There are two explanation vectors for : (minimal) and (maximal). At , there is only one explanation vector for : . At , there are two explanation vectors for : (minimal) and (maximal). There is one explanation vector for : . At , there are two explanation vectors for : (minimal) and (maximal). At , there are two explanation vectors for : (minimal) and (maximal); there are two explanation vectors for : (minimal) and (maximal). At , there is only one explanation vector for : .
In the following, we show that the minimaxBRG preserves the reachability information and other nonminimaxbasis markings can be algebraically characterized by linear equations. We first recall a property of BRG presented in [2] shown as follows.
Proposition 3.
Given a net system with a basis partition and a marking , if and only if there exists a minimax basis marking such that , where is the set of the minimax basis markings in minimaxBRG of .
Proof.
(only if) It is shown in [2] that such a property holds for the set of basis markings . As discussed in Remark 1, the set of minimax basis markings is a superset of , hence the result follows.
(if) Since , according to Definition 6, there exists a firing sequence such that . On the other hand, there exists another firing sequence such that , which implies that and concludes the proof. ∎
In summary, a marking is reachable from if and only if it belongs to the implicit reach of a minimax basis marking and thus can be characterized by a linear equation, i.e., , where , and .
4.3 Unobstructiveness of MinimaxBRGs
This subsection generalizes the notion of unobstructiveness that is given in [12] for a BRG to a minimaxBRG. Such a property is essential to establish our method since it is strongly related to the nonblockingness of a Petri net and can be efficiently determined by solving a set of ILPPs. First, we define the set of icoreachable minimax basis markings, denoted by , from which at least one of the final markings in is reachable by firing implicit transitions only.
Definition 13.
Consider a bounded Petri net system with the set of minimax basis markings in its minimaxBRG. The set of icoreachable minimax basis markings of is defined as
Proposition 4.
Given a set of final markings defined by a single GMEC and a minimax basis marking , belongs to if and only if the following set of integer constraints is feasible.
(1) 
Proof.
(if) The state equation provides necessary and sufficient conditions for reachability since the implicit subnet is acyclic (see Proposition 1). Moreover, is a final marking. Therefore, the statement holds. ∎
The notion of unobstructiveness in a minimaxBRG is given in Definition 14. In the following, we show how the unobstructiveness of a minimaxBRG is related to the nonblockingness of the corresponding Petri net.
Definition 14.
Given a minimaxBRG and a set of icoreachable minimax basis markings , is said to be unobstructed if for all there exist a marking in and a firing sequence such that . Otherwise it is obstructed.
Proposition 5.
Given a Petri net system , its minimaxBRG is unobstructed if and only if all minimax basis markings are nonblocking.
Proof.
(only if) If a minimaxBRG is unobstructed, then for all there exist a marking in and a sequence of pairs such that . By Definition 11, this means that the net admits an evolution: , where .
Since , there exists an implicit firing sequence such that , where . Thus it holds that , implying that is nonblocking.
(if) The sufficient part can be proved by contradiction. Suppose that the minimaxBRG of the net is not unobstructed. Let be the set of icoreachable minimax basis markings of . Since is obstructed, according to Definition 14, there exists a minimax basis marking , from which there do not exist a marking and a sequence of pairs such that . Therefore, there exists an implicit firing sequence such that , where . Based on Definition 13, it holds that . Thus there exists an icoreachable minimax basis marking and such that , which is a contradiction. ∎
According to Proposition 5, to determine the unobstructiveness of minimaxBRG , we need to check if all minimax basis markings in are nonblocking only, which can be verified by checking if all minimax basis markings are coreachable to some icoreachable minimax basis markings by analyzing the minimax BRG. An example is illustrated in the following.
Example 3.
Consider again the net system shown in Fig. 3 and discussed in Example 2 with and . Assuming that the set of final markings is where and , we want to verify the unobstructiveness of its minimaxBRG shown in Fig. 4.
First we need to determine the set of icoreachable minimax basis markings of this system by solving ILPP (1): we conclude that . Since all minimax basis markings are coreachable to a marking in in , the minimaxBRG is unobstructed.
4.4 MinimaxBRG for Verification of Nonblockingness
In this section, we investigate how minimaxBRG can be applied to the nonblockingness verification of the corresponding plant net. An intermediate result is proposed in Proposition 6.
Proposition 6.
Given a bounded net system with basis partition , for all
Comments
There are no comments yet.