Research Article  Open Access
Dong Han, Yinhua Tian, "Analysis and Application of Transition Systems Based on Petri Nets and Relation Matrices to Business Process Management", Mathematical Problems in Engineering, vol. 2020, Article ID 2545413, 18 pages, 2020. https://doi.org/10.1155/2020/2545413
Analysis and Application of Transition Systems Based on Petri Nets and Relation Matrices to Business Process Management
Abstract
In order to improve the efficiency of conformance checking in business process management, a business alignment approach is presented based on transition systems between relation matrices and Petri nets. Firstly, a logbased relation matrix of the events is obtained according to the event log. Then, the events in the relation matrix are observed and the transitions in the model are firing, and the activities in the log and in the model are compared. Next, the states of the log and the model are recorded until no new state can be generated, so a transition system can be obtained which includes optimal alignments between the event log and the process model. Finally, two detailed algorithms are presented to obtain an optimal alignment and all optimal alignments between the trace and the model based on the given cost function, respectively. The availability and effectiveness of the proposed approach are proved theoretically.
1. Introduction
Business process management (BPM) aims to provide a unified modeling, running, and monitoring environment for business processes from information technology and management technology. As an important branch of BPM, process mining is to discover, monitor, and enhance the actual business processes by extracting valuable information from event logs [1]. The research on process mining is significant for the implementation, analysis, and improvement of business processes, so it is a hot topic in the related fields [2, 3]. Process mining mainly includes process discovery, conformance checking, and process enhancement [4–6]. Conformance checking is to compare the events in the event logs with the activities in the process models, and it can find the similarities and differences between the observed behaviors and the modeled behaviors [7–10].
Among many conformance checking approaches, aligning observed and modeled behaviors becomes an important means to measure the compliance of event logs and process models [11–13]. The alignment approaches aim at finding the deviations between process models and event logs. Usually, the alignments with the least deviation are considered as the optimal alignments. The search algorithms of all the optimal alignments are NPhard problems, whose time complexity and space complexity are very high. In the research field of process mining, alignment approaches have been deeply studied and widely applied [14–19]. There are a large amount of literatures on alignment approaches to introduce their ideas, motivations, and problems resolved.
Through the analysis and conclusion of various alignment approaches [20–24], we find the existing problems of the current ones, mainly including high complexity of the search algorithms, unable to find the required and accurate optimal alignments, and unable to find all the optimal alignments. To solve the abovementioned problems, we propose an alignment approach based on relation matrices and Petri nets. The proposed approach is completely different from the existing alignment approaches in which it does not deal with one trace but all the traces in the event log at once. In this approach, the relation matrix reflects all the partial order relations between events in the event log. A transition system can be obtained by comparing the events in the relation matrix with the activities in the Petri net, which includes all the alignments between all the traces and the process model.
Our approach includes two steps: one is to generate the search space; the other is to search the optimal alignments in the space. Compared with other alignment approaches, this approach has two advantages: one is that it can calculate the accurate alignment results but not approximate solutions; the other is that it can obtain all the optimal alignments based on the given cost functions. However, the approach presented in this paper can embody the alignment results between all traces in the event log and the process model in a transition system; thus, it can save time and space to calculate the search space.
The rest of this paper is organized as follows. Section 2 discusses the related work. Section 3 recalls some basic concepts. The generation algorithm of the alignment transition system is presented in Section 4. Section 5 presents the approaches of searching for an optimal alignment and all optimal alignments in the alignment transition system, respectively. Section 6 describes the scalability of our approach. Case studies are given to illustrate the superiority of our approach in Section 7. Section 8 draws the conclusion and the future work.
2. Related Work
The computation of the optimal alignments is NPhard, which has very high time and space complexity. Now, the existing alignment approach can only deal with one trace once. If we want to compute all the optimal alignments for the whole event log, we must do the same work for several times. As related work, the following approaches are introduced in this paper.
An approach is presented by Cook and Wolf, which compares the traces with process models in order to quantitatively measure their similarity [19]. However, the approach is analyzed using the statespace technology, and it does partially support the invisible transitions and duplicate transitions. In addition, a heuristics estimation function is used to deal with the high computational complexity in this approach. The function simplifies the search space. However, the application of the function may lead to the approximate optimal solutions.
An approach to align observed and modeled behaviors is proposed by Adriansyah [13]. The approach is a very classical one in the related work because it can obtain all the exact optimal alignments between the given trace and the process model. Its main idea is as follows: ① an event net is constructed based on the trace; ② the product of the event net and the process net is generated, which is also a Petri net; ③ part of the reachable graph of the product model is constructed while searching for the shortest path using algorithm, which is also conformed to the definition of the transition system; ④ an optimal alignment can be obtained when arriving at the final state. The time and space complexity is very high in order to obtain the solutions.
An approach of conformance checking based on partially ordered event data is proposed by Lu et al. [20, 21]. The main idea of the approach is as follows: ① the partially ordered traces are extracted from the existing logs; ② the partially ordered alignments are obtained through dealing with the partially ordered traces; ③ a quantitativebased quality metric is introduced to objectively compare the eventual results of conformance checking. Although the alignment procedure is simplified to some extent using the technology of partially ordered alignments, only the approximate solution of the optimal alignment can be obtained in some cases.
A workflow decomposition approach to align observed and modeled behaviors is proposed by Wang et al. [22]. The approach can divide the large process models and the relevant event logs into several separate parts that can be analyzed and aligned independently. However, the approach can only deal with the block workflow models which can be divided into several segments. Generally, it can only obtain some alignments, rather than all the optimal alignments.
An efficient alignment approach between event logs and process models is presented by Song et al. [23]. The approach leverages effective heuristics and trace replaying to significantly reduce the overall search space for seeking the optimal alignment. The approach improves the efficiency of computing the search space, including the time aspect and space aspect. However, there are still some redundant nodes in the search space, which are not on the paths to the optimal alignments. In addition, only part of the optimal alignments can be obtained due to the limitation of the preprocess, even in some cases only approximate optimal alignments can be obtained.
A reduced alignment approach between event logs and process models is presented by Tian et al., which is named as OAT approach [24]. An optimal alignment tree is generated through this approach. In the optimal alignment tree, the optimal alignments can be easily found by adding the final marks to the leaf nodes which is related to the optimal alignments. The approach largely reduces the time complexity when searching for the optimal alignments in the search space. However, there are some fatal problems, for instance, all the information is placed on the nodes, the duplicate nodes are not shared, and the invalid nodes are not pruned. Hence, the size of the optimal alignment tree is too large and even the search space will explode.
The approach proposed in this paper can obtain the logbased relation matrix according to the given event log. The relation matrix can illustrate all the precursor and successor relations between the events in the log. Then, an alignment transition system can be acquired through comparing the events in the log with the activities in the model and predicting the next move. The alignment transition system includes all the optimal alignments between all traces and the model. Two algorithms are presented to calculate an optimal alignment and all the optimal alignments based on the cost function, respectively.
Compared with other approaches, the approach in this paper has two advantages. One is that it can obtain the accurate alignment results rather than the approximate solutions. The other is that it can obtain all optimal alignments between traces and process models based on the given cost function. Especially, the search space of our approach includes the alignment results for all traces in the log, but not only one.
3. Preliminaries
This section briefly reviews some basic concepts, including traces [4], event logs [4], Petri nets [25–31], transition systems [13], and alignments [13].
Definition 1. (trace and event log). Let A be a set of activities. A trace is a sequence of activities. An event log is a multiple set of traces on A.
Definition 2. (labeled Petri net system). Let A be a set of activities. A labeled Petri net system over A is a tuple N = (P, T; F, α, m_{i}, m_{f}), where(1)P is the set of places(2)T is the set of transitions, and (3) is an arc set between transitions and places, i.e., a flow relation(4) is a function that maps transitions to labels, and τ denotes the invisible transition, (5)m_{i} and m_{f} are the initial marking and final marking, respectivelyFor convenience, in the remainder of this paper, the labeled Petri net system is abbreviated as Petri net.
Definition 3. (perset and postset). Let N = (P, T; F, α, m_{i}, m_{f}) be a Petri net. For ,where represents the preset of x and represents the postset of x.
We describe the transition firing rules by using the multisets of places. For any reachable state , the transition firing rules of Petri net N = (P, T; F, α, m_{i}, m_{f}) are as follows:(1)For transition , if , t is enabled denoted by m[t>(2)If m[t>, it means that the transition t can occur under the marking m, and after the transition t is fired, a new marking m′ is generated, denoted by m[t>m′, where The set of all reachable states from state m is denoted as R(m), and . In Petri net N = (P, T; F, α, m_{i}, m_{f}), m_{i} means the initial state of the system, and then represents the set of all reachable states in the running process of the system.
Definition 4. (transition system). Let A be a set of activities. A transition system is a triplet TS = (S, A, T), where S is the set of states, and is the set of transitions. is the set of initial states, and is the set of final states.
Definition 5. (alignment). Let A be a set of activities. is a trace over A and N = (P, T; F, α, m_{i}, m_{f}) is a Petri net over A. An alignment between σ and N is a legal movement sequence such that(1), i.e., its sequence of movements in the trace (ignoring >>) yields the trace(2), i.e., its sequence of movements in the model (ignoring >>) yields a complete firing sequence of NFor all tuples in an alignment, (a, t) is one of the following movements:(1)log move if a ∈ A and t = >>(2)model move if a = >> and t ∈ T(3)synchronous move if either a ∈ A and t ∈ T or a = >> and α(t) = τ(4)illegal move otherwiseWe consider all of the log moves, model moves, and synchronous moves as legal ones. An alignment is legal if it only contains legal moves.
is the set of all alignments between trace σ and model N.
There may be several different alignments between the trace and model. To get the most suitable alignments, a cost function c((a, t)) is used to assign a certain value to each move. According to the given cost function, the alignments with the least total cost are called optimal alignments.
Likelihood cost function c() determines the optimal alignment set between the given trace and model directly. In this paper, the standard likelihood cost function lc() is used to assign the cost to the moves, i.e., the cost value of the synchronous move, log move, and model move is 0, 1, and 1, respectively.
is the set of all optimal alignments between trace σ and model N based on the function lc().
4. Generation of Transition Systems
When measuring the fitness between the event log and the process model, the main work is to align the events in the trace with the activities in the model. In the current alignment procedure, assuming that the observed event in the log is x, the fired transition in the model is t_{i}, and t_{i}’s mapping activity is y. In the next procedure, one of the following three scenarios may occur: ① we can observe activity x in the log but x cannot be modeled by firing the transition in the model, then a log move (x, >>) is generated; ② when activity y is modeled by firing the transition t_{i} in the model but cannot be observed in the log, a move (>>, t_{i}) is generated; if y is equal to τ, (>>, t_{i}) is a synchronous move; else, (>>, t_{i}) is a model move; ③ if x is equal to y, a synchronous move (x, t_{i}) can be generated when the activity observed in the log is the same as the one modeled in the model.
The proposed approach is derived from the abovementioned idea. It aims to observe the event log, run the process model, and compare the event in the log with the activity in the model. We record the states of the log and model, and then we can get an optimal alignment graph. The graph includes all the optimal alignments.
Next, we take the given event log and process model as an example to introduce the basic principles of the proposed approach.
Let A = {a, b, c, d} be a set of activities. There is an event log of a simple process on A, as shown in Table 1. We denote the event log as , where , , , and .

Given process model N_{1} = (P_{1}, T_{1}; F_{1}, α_{1}, m_{i,1}, m_{f,1}), as shown in Figure 1. Its place set is P_{1} = {p_{1}, p_{2}, p_{3}, p_{4}}; its transition set is T_{1} = {t_{1}, t_{2}, t_{3}, t_{4}}; its flow relation set is F_{1} = {(p_{1}, t_{1}), (t_{1}, p_{2}), (p_{2}, t_{2}), (p_{2}, t_{3}), (t_{2}, p_{3}), (t_{3}, p_{3}), (p_{3}, t_{4}), (t_{4}, p_{4})}; the mapping relations between transitions and activities are α_{1}(t_{1}) = a, α_{1}(t_{2}) = b, α_{1}(t_{3}) = c, α_{1}(t_{4}) = d; the initial marking is m_{i,1} = [p_{1}]; the final marking is m_{f,1} = [p_{4}].
4.1. LogBased Relation Matrices
Consider for instance L_{1} = [σ_{1}, σ_{2}, σ_{3}, σ_{4}] again. For this event log, the following logbased order relations can be found, as in (2)–(5):
Relation contains all pairs of activities with a directly following relation. because b directly follows a in trace σ_{1} = <a, b>. However, because a never directly follows b in any trace in the log. contains all pairs of activities in a causal relation, e.g., because sometimes b directly follows a and never the other way around ( and ). because and . because , i.e., a follows itself.
We can conclude the footprint of the log L_{1}, as in (6). The subscripts have been removed in
According to the footprint in (6), we can get all the relations of the activities in the event log, but not only a trace. Although the footprint embodies the relations between the activities in the log, it cannot describe the current states of the log, especially the start and end of the traces. To illustrate all the information needed in the alignment process, we convert the traces in the log into the transition systems, as shown in Figure 2.
(a)
(b)
(c)
(d)
A trace in the log is corresponding with a transition system, which is called as tracebased transition system. Firstly, we create an initial state, denoted as s_{0}, which means the start of the trace. Then, each activity in the trace is mapped into a state, e.g., a and b in trace σ_{1} are mapped to s_{a} and s_{b}, respectively. And the state mapped by the last activity is the final state, e.g., b in trace σ_{1} is the last activity so that s_{b} is the final state of transition system TS_{1}. The states are changed in the transition system when the activities are observed in the trace. Hence, adding the edge between the adjacent states, which is labeled by the observed activity.
Definition 6. (tracebased transition system). Let A be a set of activities. is a trace of length n over A. The tracebased transition system of σ is a transition system TS = (S, ∂_{set}(σ), T), where(1)(2)(3)S^{start} = {s_{0}}, i.e., s_{0} is the initial state(4)S^{end} = , i.e., is the final stateHere, σ[i] refers to the ith element of trace σ, and converts a sequence into a set.
In Figure 2, the state with an arrow line is the initial state, and the one with two circles is the final state.
Transition system TS_{1} depicted in Figure 2(a) can be formalized as follows: S_{1} = {s_{0}, s_{a}, s_{b}}, , , ∂_{set}(σ_{1}) = {a, b}, and T_{1} = {(s_{0}, a, s_{a}), (s_{a}, b, s_{b})}.
Transition system TS_{2} depicted in Figure 2(b) can be formalized as follows: S_{2} = {s_{0}, s_{b}, s_{d}}, , , ∂_{set}(σ_{2}) = {b, d}, and T_{2} = {(s_{0}, b, s_{b}), (s_{b}, d, s_{d})}.
Transition system TS_{3} depicted in Figure 2(c) can be formalized as follows: S_{3} = {s_{0}, s_{a}, s_{a}, s_{b}}, , , ∂_{set}(σ_{3}) = {a, b}, and T_{3} = {(s_{0}, a, s_{a}), (s_{a}, a, s_{a}), (s_{a}, b, s_{b})}.
Transition system TS_{4} depicted in Figure 2(d) can be formalized as follows: S_{4} = {s_{0}, s_{a}, s_{b}, s_{d}}, , , ∂_{set}(σ_{4}) = {a, b, d}, and T_{4} = {(s_{0}, a, s_{a}), (s_{a}, a, s_{b}), (s_{b}, d, s_{d})}.
Through the analysis of the footprint in (6) and the transition systems in Figure 2, we can infer a relation matrix between states.
Definition 7. (logbased relation matrix). Let A be a set of activities. is an event log over A. TS_{i} = (S_{i}, ∂_{set}(σ_{i}), T_{i}) is the tracebased transition system of trace σ_{i}, where 1 ≤ i ≤ n. The logbased relation matrix is a matrix LRM , where(1)LRM^{row} is the row mark of LRM(2)LRM^{col} is the column mark of LRM(3)If , and either s_{a} = LRM^{col}[k] or ; else, (4)LRM^{start} = {s_{0}}, i.e., s_{0} is the initial state(5), i.e., is the final stateHere, (S) is an inverse operation of ∂_{set}(σ) and converts a set into a sequence. π_{i}(x) refers to the ith element of x. The symbol # represents that the two states have no direct causal relation.
According Definition 7, the logbased relation matrix LRM_{1} of log L_{1} can be constructed, as in (7). The states labeled by the star in (7) are the final states:According to Definition 7, the logbased relation matrix can present the sequences of activities. We read the state in the relation matrix, beginning at the initial state, and ending at the final state. A complete sequence consists of all the activities between states. The set including all the sequences is denoted as . If LRM is the relation matrix of event log L, , i.e., ∀σ_{i} ∈ L: (1 ≤ i ≤ L). In contrast, .
Obviously, , , , and , then . But . Because there is the sequence <a, a, a, a, b>, where <a, a, a, a, b> ∈ but <a, a, a, a, b> ∉ L_{1}.
4.2. Alignment Transition Systems
Given the process model N = (P, T; F, α, m_{i}, m_{f}) and the event log L = [σ_{1}, σ_{2}, σ_{3}, …, σ_{n}], the relation matrix LRM[S][S − {s_{0}}] is derived from the log firstly. We can measure the fitness between the log and model based on the relation matrix and Petri net.
From now on, we replace the event log as the relation matrix and use the matrix to embody the current state, observed activity, and next state of the log. Through the comparison between the relation matrix and Petri net, we can get an alignment transition system.
Definition 8. (alignment transition system). Let A be a set of activities. is an event log over A.LRM[S][S − {s_{0}}] is the relation matrix of L. N=(P, T; F, α, m_{i}, m_{f}) is a Petri net over A. The alignment transition system between L and N is a transition system ATS = (S, M, T), where(1)(2)(3)S^{start} = {(m_{i}, s_{0})} is the initial state(4) are the final statesWe observe the log and run the process model. Meanwhile, we record the current state of the log and the current reachable marking of the model. Then, according to their current information, we infer that the activity can be observed in the matrix, the transition can be fired in the Petri net, and their relation can be compared. On the basis of the compared result, we can predict the next state of the matrix and the next reachable marking of the net.
For arbitrary Petri nets, their structures may be very complicated and diverse. Here, we discuss a special structure for the Petri net and its influence on the alignment transition system. The Petri net contains cycles in which the cost of the transitions is 0. As a result, the alignment transition system may contain cycles with cost 0. In the context of practical application of our paper, the transitions with cost 0 are the invisible transitions in the Petri nets. The invisible transitions represent the activities that can never be observed, so the cycles containing only the invisible transitions have little meanings to the alignment results. In order to reach the final node from the initial node in a limited number of steps, we delete this kind of cycles from the alignment transition system.
The abovementioned idea is translated into the concrete algorithm to realize the alignment transition system, as shown in Algorithm 1.
The computational complexity of the alignment transition systems based Petri nets and relation matrices is related to the number of the reachable states of the Petri nets and the length of the traces, which is a NPhard problem. Its complexity is also very high just like the reachable marking graph of the Petri nets. Especially, when there are many transitions with the concurrent relations in Petri nets, the number of the reachable states increases exponentially and even causes state space to explode.
According to Algorithm 1, taking relation matrix LRM_{1} in (7) and process model N_{1} in Figure 1 as an example, we can get an alignment transition system, as shown in Figure 3.
Given the event log and the process model, the alignment between them is translated into the calculation of the move sequence in the alignment transition system. The moves are the weights of the edges in the system, so we can calculate the move sequence when traversing the branch of the system. Hence, the problem of the optimal alignment between the log and the model is translated into that of the minimum cost move sequence in the alignment transition system. However, the alignment transition system includes all the information of the event log, so the sequence consisted of the projection of the moving sequence onto the first column must be the given trace when calculating the optimal alignments between the trace and the model.
When visiting the states in alignment transition system ATS_{1} in Figure 3, we can get some shortest paths, as shown in Figure 4, and their corresponding optimal alignments, as shown in Figure 5.

(a)
(b)
(c)
(d)
(a)
(b)
(c)
(d)
4.3. Properties of Alignment Transition Systems
In this section, we present the properties of the alignment transition system and theoretically demonstrate that it includes the alignments between all traces in the event log and the process model.
Theorem 1. Let N = (P, T_{N}; F, α, m_{i}, m_{f}) is a Petri net, L is an event log, LRM is a logbased relation matrix of L, and ATS = (S_{A}, M_{A}, T_{A}) is an alignment transition system of LRM and N. S_{A} = R(m_{i}) × LRM^{row}, where R(m_{i}) is all the reachable states of N, and LRM^{row} includes all the states in LRM.
Proof. ∀s_{A} ∈ S_{A}, π_{1}(s_{A}) ∈ R(m_{i}) ∧ π_{2}(s_{A}) ∈ LRM^{row}. So, s_{A} ∈ R(m_{i}) × LRM^{row}. Then, S_{A} ⊆ R(m_{i}) × LRM^{row}.
, we examine whether a path can be established from (m_{i}, s_{0}) to according to Algorithm 1. m_{j} ∈ R(m_{i}), we suppose that a firing transition sequence t_{1}, t_{2} … t_{j} in N, which makes m_{i}[t_{1}t_{2} … t_{j} > m_{j}. Then, there is a transition sequence in ATS which makes (m_{j}, s_{0}) ∈ S_{A}. The sequence is <((m_{i}, s_{0}), (>>, t_{1}), (m_{1}, s_{0})), ; we suppose that an activity sequence a_{1}, a_{2}, …, a_{k} in LRM^{row}, which makes , and . Then, there is a transition sequence in ATS which makes . The sequence is , . Hence, . So, R(m_{i}) × LRM^{row} ⊆ S_{A}.
In conclusion, S_{A} = R(m_{i}) × LRM^{row}.
Theorem 1 shows that the state set of the alignment transition system is the Cartesian product of the reachable state set of the Petri net and the state set of the relation matrix. According to Theorem 1, no matter what states we use, they must be in alignment transition system.
For example, R(m_{i,1}) of N_{1} in Figure 1 is {[p_{1}], [p_{2}], [p_{3}], [p_{4}]} and in (7) is {s_{0}, s_{a}, s_{b}, s_{d}}. S_{ATS1} of ATS_{1} in Figure 3 is {([p_{1}], s_{0}), ([p_{2}], s_{0}), ([p_{3}], s_{0}), ([p_{4}], s_{0}), ([p_{1}], s_{a}), ([p_{2}], s_{a}), ([p_{3}], s_{a}), ([p_{4}], s_{a}), ([p_{1}], s_{b}), ([p_{2}], s_{b}), ([p_{3}], s_{b}), ([p_{4}], s_{b}), ([p_{1}], s_{d}), ([p_{2}], s_{d}), ([p_{3}], s_{d}), ([p_{4}], s_{d})}, which is equal to R(m_{i,1}) × .
Theorem 2. Let N = (P, T_{N}; F, α, m_{i}, m_{f}) is a Petri net, L is an event log, LRM is a logbased relation matrix of L, and ATS = (S_{A}, M_{A}, T_{A}) is an alignment transition system of LRM and N. is the set of all alignments between all traces in L and , and includes all the sequences that are π_{2}(<(s_{A,1}, m_{A,1}, s_{A,2}), (s_{A,2}, m_{A,2}, s_{A,3}), …, (s_{A, n−1}, m_{A,n}, s_{A,n})>), where s_{A,1} ∈ S_{A}^{start} and s_{A,n} ∈ S_{A}^{end}.
Proof. , ignoring >>, σ = π_{1}(γ) ∈ L and λ = π_{2}(γ) ∈ . <γ[1]>, <γ[1], γ[2]>, …, <γ[1], γ[2], …, γ[i]>, …, and <γ[1], γ[2], …, γ[q]> are the prefix of γ, and the prefix alignments between L and N, where 1≤i ≤ q.
We prove the theorem by induction on γ, where γ = q:(1)When i = 1, ① if γ [1] is a log move, γ [1] = (a_{k}, >>). a_{k} is the first activity of trace σ. So, , . According to Steps 7–13 of Algorithm 1, ∃((m_{i}, s_{0}), (a_{k}, >>), ) is a transition of ATS. ② If γ [1] is a model move, γ [1] = (>>, t_{j}). t_{j} is the first transition of λ. ∃m_{j} ∈ R(m_{i}), m_{i}[t_{j} > m_{j}. According to Step 14–Step 23 of Algorithm 1, ∃((m_{i}, s_{0}), (>>, t_{j}), (m_{j}, s_{0})) is a transition of ATS. ③ If γ [1] is a synchronous move, γ [1] = (a_{k}, t_{j}). According to Step 24–Step 31 of Algorithm 1, ∃ ((m_{i}, s_{0}), (a_{k}, t_{j}), ) is a transition of ATS, where m_{i}[t_{j} > m_{j}. Hence, <γ [1]> is the prefix of some sequences in .(2)When i = q − 1, it is supposed that <γ [1], γ [2], …, γ[q − 1]> is also the prefix of some sequences in . We suppose the last state in ATS is .Let i = q, ① if γ[q] is a log move, γ[q] = (a_{k+1}, >>). a_{k+1} is the last activity of trace σ and m_{j} = m_{f}. So, ∈ LRM^{end}, . According to Steps 7–13 of Algorithm 1, is a transition of ATS. ② If γ[q] is a model move, γ[q] = (>>, t_{j+1}). t_{j+1} is the last transition of λ and . ∃m_{j+1} ∈ R(m_{i}) ∧ m_{j+1} = m_{f}, m_{j}[t_{j+1} > m_{j+1}. According to Steps 14–23 of Algorithm 1, is a transition of ATS. ③ If γ[q] is a synchronous move, γ[q] = (a_{k+1}, t_{j+1}). According to Step 24–31 of Algorithm 1, is a transition of ATS. Hence, <γ [1], γ [2], …, γ[q]> is a sequence in .
In conclusion, γ ∈ . Then, .
Theorem 2 shows that all the alignments between the traces in the log and the model can be found in the alignment transition system.
Corollary 1. Let N = (P, T_{N}; F, α, m_{i}, m_{f}) is a Petri net, L is an event log, LRM is a logbased relation matrix of L, and ATS = (S_{A}, M_{A}, T_{A}) is an alignment transition system of LRM and N. is the set of all the optimal alignments between the traces in L and N based on the standard likelihood cost function lc(). .
Proof. According to Definition 5, . According to Theorem 2, .
Hence, .
Corollary 1 shows that all the optimal alignments between the traces in the log and the model can be found in the alignment transition system. This corollary provides the theoretical foundation for the search of the optimal alignments in the alignment transition system.
5. Calculation of Optimal Alignments
We can get an alignment transition system between the event log and the process model by Algorithm 1. The optimal alignments between the trace and model based on the standard likelihood cost function can be calculated through finding the shortest path from the initial state to the final state in the system. This section presents two algorithms to realize the calculations of an optimal alignment and all optimal alignments, respectively.
Since most of the states in the alignment transition system have more than one parent and even some states have selfcycles, it is possible to reach the same state from different branches in the process of finding the optimal alignment. In the search process, we should record not only the current state and cost but also the prefix alignment. The unit that stores the related information is referred to as the search node.
5.1. Computing an Optimal Alignment
Because there are more than one trace in the event log, a path between the initial state and the final state in the alignment transition system may not be the alignment of the given trace, let alone its optimal alignment. In other words, the shortest path may not be mapping to the optimal alignment for the specified trace. So, not only the length of the path but also the specified trace must be considered when computing the optimal alignment between the trace and the model.
In order to get the optimal alignment of the given trace, not only the short path should be searched as far as possible but also it should be guaranteed that the sequence consisted of the projection onto the first column of the moves on the path is equal to the prefix of the trace. Algorithm 2 is presented to compute an optimal alignment between all traces in the event log and the process model based on the standard likelihood cost function.

The complexity of Algorithm 2 is related to that of the alignment transition system and the given trace, which is a NPhard problem. In Algorithm 2, each node stores the prefix alignment. When calculating the optimal alignment, it must meet the two following criteria: one is that the last visited state of the alignment transition system must be the final state; the other is that the projection of the eventual prefix alignment onto the first column is the given trace. Most of the nodes generated in the search process can be discarded, only the current node needs to be stored, so the storage space of this algorithm is greatly saved.
According to Algorithm 2, taking alignment transition system ATS_{1} in Figure 3 and event log L_{1} in Table 1 as an example, we can get an optimal alignment for each trace in log L_{1}. When visiting the states in alignment transition system ATS_{1} in Figure 3, the key nodes generated, as shown in Table 2. The prefix alignment of the last node for each trace is its optimal alignment. The search results of each step in Algorithm 2 can ensure that the prefix alignment is with the least cost at the current cost, and it is suitable for the given trace. The eventual results are certain to be the optimal alignments of the given traces due to the current costs and the prefix alignments.

5.2. Computing all Optimal Alignments
The alignment transition system includes all the alignments between all the traces and the model. When calculating the optimal alignments based on the system, we can get more alignments besides the optimal ones if ignoring the constraint of the least cost. In fact, when having found the optimal alignment for the first time, its cost is the minimum value between the given trace and the model based on the standard likelihood cost function. The cost of any other optimal alignments cannot be greater than this value.
In addition, all the nodes whose cost is less than or equal to the cost of the optimal alignment are checked, which can determine whether we get all optimal alignment. However, if the cost of the node is greater than the optimal cost, it will never arrive at the final node which stands for the optimal alignment.
The main idea to compute all optimal alignment is similar to that of Algorithm 2. The successor of the current node can be entered into the queue when it meets the two criteria: one is that the current cost is not greater than the optimal cost; the other is that the projection of the current alignment onto the first column conforms to the prefix of the given trace.
Algorithm 3 is presented to achieve all optimal alignments between all traces in the event log and the process model based on standard likelihood cost function.

This algorithm can be further optimized. For instance, if the successor is equal to the existing node, we can abort to add the successor and share the existing one. After optimizing the algorithm, the number of the nodes in the queue will be reduced, so the efficiency of the algorithm can be improved.
The execution of Algorithm 3 mentions to the traverse of the alignment transition system, and some states in the system will be visited for several times. Hence, its time complexity is very high. The complexity of Algorithm 3 is still a NPhard problem.
According to Algorithm 3, taking alignment transition system ATS_{1} in Figure 3 and event log L_{1} in Table 1 as an example, we can get all optimal alignments for each trace in log L_{1}. σ_{1}, σ_{2}, and σ_{4} have just only one optimal alignment. However, trace σ_{3} has two optimal alignments, as shown in Figure 6.
(a)
(b)
6. Scalability of Our Approach
In most of the cases, the existing approaches can only compute the alignment between one trace and the model each time. When computing the optimal alignments between a new trace and the model, we must completely execute the alignment approach again and get a different search space. However, the proposed approach in this paper has certain scalability. We just adjust and modify the alignment transition system, and then it can be used for the new trace.
Next, we introduce the possible changes for the alignment transition system when aligning a new trace with the model.
6.1. Remaining Unchanged
When the relations of the activities in the new trace conform to that of the original logbased relation matrix and the last activity is identical to that of some existing traces, the alignment transition system remains unchanged.
Taking process model N_{1} in Figure 1, event log L_{1} in Table 1, and alignment transition system ATS_{1} in Figure 3 as an example, the logbased relation matrix of L_{1} is LRM_{1} in (7). We suppose that the new trace is σ_{5} = <a, a, a, b>, which is different from any trace in L_{1}. And its tracebased transition system is shown in Figure 7.
Transition system TS_{5} depicted in Figure 7 can be formalized as follows: , S_{5}^{start} = {s_{0}}, , ∂_{set}(σ_{5}) = {a, b}, and . Compared with LRM_{1}, , S_{5} − {s_{0}} ⊆ , S_{5}^{start} ⊆ , and S_{5}^{end} ⊆ . And T_{5} can be depicted by LRM_{1} as follows: LRM_{1}[s_{0}][s_{a}] = a, LRM_{1}[s_{a}][s_{a}] = a, and . Hence, we can align trace σ_{5} with model N_{1} by system ATS_{1}.
We can get an optimal alignment between trace σ_{5} and model N_{1} by Algorithm 2 from transition system ATS_{1} and all the optimal alignments by Algorithm 3. The optimal alignments are corresponding to the paths from the initial node to the final nodes in ATS_{1}, as shown in Table 3.

6.2. Setting Another New Final State
When the relations of the activities in the new trace conform to that of the original logbased relation matrix, but the last activity is different from that of any existing trace, the alignment transition system needs to set another new final state. Supposing that the last activity is x, we must set the state to be another new final state in the alignment transition system.
We suppose the new trace is σ_{6} = <a, a>, which is different from any trace in L_{1}. And its tracebased transition system is shown in Figure 8.
Transition system TS_{6} depicted in Figure 8 can be formalized as follows: S_{6} = {s_{0}, s_{a}}, = {s_{0}}, = {s_{a}}, ∂_{set}(σ_{6}) = {a}, and T_{6} = {(s_{0}, a, s_{a}), (s_{a}, a, s_{a})}. Compared with LRM_{1}, S_{6} ⊆ , S_{6} − {s_{0}} ⊆ , and ⊆ . And T_{6} can be depicted by LRM_{1} as follows: LRM_{1}[s_{0}][s_{a}] = a and LRM_{1}[s_{a}][s_{a}] = a. But ⊄ . Hence, we must set s_{a} to be another new final state in LRM_{1} as follows:
Accordingly, we set the state to be another new final state in the alignment transition system. Supposing that the modified system is named as , we can align trace σ_{6} with model N_{1} by system . We can get an optimal alignment between trace σ_{6} and model N_{1} by Algorithm 2 from transition system and all the optimal alignments by Algorithm 3. The optimal alignments are corresponding to the paths from the initial node to the final nodes in , as shown in Table 4.

6.3. Adding New Transitions
When the relations of the activities in the new trace cannot be found in the original logbased relation matrix, the alignment transition system needs to add new transitions. We suppose that the new relation is , then we must add new transitions to the alignment transition system. The new transitions include {((m_{k}, s_{x}), (y, >>), (m_{k}, s_{y}))m_{k} ∈ R(m_{i}) ∧ (m_{k}, s_{x}) ∈ ATS} ∪ {((m_{k}, s_{x}), (y, t_{j}), (m_{k+1}, s_{y}))m_{k} ∈ R(m_{i}) ∧ (m_{k}, s_{x}) ∈ ATS ∧ m_{k}[t_{j} > m_{k+1} ∧ α(t_{j}) = y}.
We suppose the new trace is σ_{7} = <b, a, b>, which is different from any trace in L_{1}. And its tracebased transition system is shown in Figure 9.
Transition system TS_{7} depicted in Figure 9 can be formalized as follows: , , , ∂_{set}(σ_{7}) = {a, b}, and . Compared with LRM_{1}, S_{7} ⊆ , S_{7} − {s_{0}} ⊆ , ⊆ , and ⊆ . And T_{7} can partly be depicted by LRM_{1} as follows: and . But transition in T_{7} cannot be expressed in LRM_{1}. Firstly, we set as follows:
Then, we add new transitions to ATS_{1}, including and . Supposing that the modified system is named as ATS_{1}^{2}, we can align trace σ_{7} with model N_{1} by system . The adding transitions to ATS_{1} are shown in Figure 10.
We can get an optimal alignment between trace σ_{7} and model N_{1} by Algorithm 2 from transition system ATS_{1}^{2} and all the optimal alignments by Algorithm 3. The optimal alignments are corresponding to the paths from the initial node to the final nodes in , as shown in Table 5.

6.4. Adding New States and Transitions
When the activities in the new trace cannot be found in the event log, the alignment transition system needs to add new states and transitions. Supposing that the activity is x, we must add several new states and transitions to the alignment transition system. The new states are as follows: {(m_{k}, s_{x})m_{k} ∈ R(m_{i})}. The pattern that the new transitions are added is similar to the example in Section 6.3. We suppose the new trace is σ_{8} = <a, c, b>, which is different from any trace in L_{1}. And its tracebased transition system is shown in Figure 11.
Transition system TS_{8} depicted in Figure 11 can be formalized as follows: , = {s_{0}}, , ∂_{set}(σ_{8}) = {a, b, c}, and . Compared with LRM_{1}, ⊆ and ⊆ . But, S_{8} ⊄ and S_{8} − {s_{0}} ⊄ . T_{8} can partly be depicted by LRM_{1} as follows: LRM_{1}[s_{0}][s_{a}] = a. But transitions (s_{a}, c, s_{c}) and in T_{8} cannot be expressed in LRM_{1}. Firstly, we set LRM_{1}[s_{a}][s_{c}] = c and , as follows:
Then, we add new states to ATS_{1}, including {(m_{k}, s_{c})m_{k} ∈ {[p_{1}], [p_{2}], [p_{3}], [p_{4}]}}. Next, we add new transitions, including {. We suppose that the modified system is named as ATS_{1}^{3}, and the adding states and transitions to ATS_{1} are shown in Figure 12.
We can align trace σ_{8} with model N_{1} by system . We can get an optimal alignment between trace σ_{8} and model N_{1} by Algorithm 2 from transition system and all the optimal alignments by Algorithm 3. The optimal alignments are corresponding to the paths from the initial node to the final nodes in , as shown in Table 6.

No matter what activities the new trace contains and how the relations between them are, it can be decomposed into one of the four cases mentioned above. Then, we can deal with the alignment transition system according to the relation between the new trace and the logbased relation matrix. Eventually, the new system includes the alignments between the new trace and the model.
When a new trace not in the original event log is aligned with the process model, our approach does not need to generate a new search space completely but only needs to expand the existing search space appropriately. Hence, our approach has better scalability and applicability.
7. Case Studies
The greatest advantage of our approach is to deal with all traces in the event log at a time. It is more efficient than the approaches that can only deal with one trace every time. We integrate the following relations between events via the logbased relation matrix, so we can obtain all the alignments between batch traces and the model by an alignment transition system. In order to express the superiority of our approach, we compare it with AlignmentOne approach. AlignmentOne approach considers that the event log just has a trace and computes the alignments between a trace and the model via Algorithms 1–3. Taking a relatively complex process model for an example, this section provides some analysis results of our promoted approach. Compared with the results of AlignmentOne approach, the superiority of our approach can be illustrated.
Both AlignmentOne approach and our approach can be divided two steps: one is the generation of the search space; the other is the search for the optimal alignments. The scale of the search space determines the complexity of the search work to a certain extent. So, the complexity of the search space is critical for the performance of the alignment approaches. In this paper, it is deeply studied that the number and the size of the search spaces are generated during the execution of the alignment approaches, which indirectly illustrate their complexity. Hence, the case studies focus on the number and size of the search spaces. Through the research, the superiority of our approach is verified.
In order to enhance the safety of the transportation of the coal mine, a distributed control system for the inclined shaft of the coal mine is introduced [32]. Petri nets are adopted to build the model for this system, as shown in Figure 13.
The model has a place named as p_{1} that represents the start of the workflow and a place named as p_{14} that represents the end. Any place or transition in the model is on a path from p_{1} to p_{14}. Moreover, the model has the properties, such as security, option to complete, proper completion, and no dead transitions. Hence, the model is considered to be a sound Petri net.
The actual meanings of places and transitions in Figure 13 are shown in Tables 7 and 8, respectively. In addition, each transition is mapped to an activity, as shown in Table 8. The name of each activity is a character, which is suitable for the representation of the control flow, i.e., trace.


Each event log is composed of some activity sequences generated randomly from the process model, and then we make several manmade noises for these sequences. The event logs are shown in Table 9.

The process model generates completely fit traces with different lengths, each of which contains about 6 to 15 activities. Noises are created by randomly deleting the activities from or adding them to the traces. However, when adding an activity, no activity beyond the given activity set appears. In this example, each activity in the traces is an element of the set A = {a, b, c, d, e, f, , h, i, j, k}. Then, based on the standard likelihood cost function, the optimal alignments between all traces and the model are calculated. The number and the size of the search space are counted to compare AlignmentOne approach with our approach.
This instance contains four event logs, and each one contains five different traces. The average lengths of five traces in the four event logs are 6, 9, 12, and 15, respectively. The comparison results between AlignmentOne approach and our approach are shown in Table 10.

According to Table 10, when an event log has five different traces, five alignment transition systems need to be established to get the optimal alignments between the traces in the log and the process model. However, the proposed approach in this paper needs only to establish an alignment transition system.
In AlignmentOne approach, the number of states of the alignment transition system is related to not only the average length of the trace but also the number of the reachable states of the model. There is only one model in this instance, so the number of the reachable states is unchanged. When the average lengths of the traces in the log increase, the number of states of alignment transition systems obtained by AlignmentOne approach increase linearly, which are proportional to the average lengths of the traces.
In our approach, the number of states of an alignment transition system is determined by that of different activities in the event log and that of reachable states of the process model. When the average lengths of the traces in the log are short, the number of states of the alignment transition systems in our approach is greater than that of AlignmentOne approach. However, when the average lengths of the traces are greater than A (A is the set of activities, and A is the length of A.), the number of states of the alignment transition systems in our approach is a constant and its value is much less than that of AlignmentOne approach. As shown in Table 10, when the average lengths of the traces are 12 and 15, the number of states of the alignment transition systems in our approach is fixed at 144. Even if the average lengths of the traces continue to increase, the number of states will remain 144 as long as each activity in the traces is the member of set A.
According to the abovementioned analysis, when there are m different traces in the event log, our approach only needs to compute an alignment transition system, while AlignmentOne approach needs to compute m ones. Generally, our approach yields much fewer states than AlignmentOne approach.
The comparison results show that our approach generates much smaller search spaces than AlignmentOne approach. Hence, our approach outperforms AlignmentOne approach.
8. Conclusions
As more and more event logs are recorded in enterprise organizations, conformance checking between event logs and process models plays an increasingly important role in process mining. At present, as a significant technique of conformance checking, alignment is widely used in process discovery, precision checking, and process enhancement. Alignment can accurately locate the deviations and measure the fitness between the observed and modeled behaviors. Most of the existing alignment approaches can only compute an optimal alignment between the trace and the model, or even just a suboptimal alignment.
In order to solve the problems that the state space only includes the alignments between one trace and the model, this paper proposes a business alignment approach based on the transition system between relation matrices and Petri nets. This approach can generate an alignment transition system, which includes the alignments between all traces in the log and the model. No matter how many traces are involved in the log, this approach only needs to generate one alignment transition system. According to the search results of prefix alignments in the system, two algorithms are proposed to find an optimal alignment and all optimal alignments between all traces in the log and the model based on the given cost function, respectively.
The proposed approach in this paper effectively solves problems such as low efficiency and high memory occupancy. It improves the efficiency of calculating optimal alignments. The alignments between all traces in the log and the model are embodied in the alignment transition system. Our approach simplifies the search space which includes all the optimal alignments. In the future work, we will further study the relations between activities in the log so that the more reasonable relation matrices will be established. On these grounds, the more efficient alignment approaches can be proposed.
Data Availability
The data used to support the findings of this study are available from the corresponding author upon request.
Conflicts of Interest
The authors declare that there are no conflicts of interest regarding the publication of this paper.
Acknowledgments
This work was supported in part by the Natural Science Foundation of China under Grant 61973180, Taishan Scholar Construction Project of Shandong Province, Key Research and Development Program of Shandong Province under Grant 2018GGX101011, and Natural Science Foundation of Shandong Province under Grants ZR2018MF001 and ZR2019MF033.
References
 W. M. P. van der Aalst, “Business process management: a comprehensive survey,” ISRN Software Engineering, vol. 2013, Article ID 507984, 37 pages, 2013. View at: Publisher Site  Google Scholar
 W. M. P. van der Aalst, A. Adriansyah, and A. K. A. D. Medeiros, “Process mining manifesto,” in Lecture Notes In Business Information Processing, pp. 169–194, Springer, Berlin, Germany, 2012. View at: Google Scholar
 C. Li, M. Reichert, and A. Wombacher, “Mining business process variants: challenges, scenarios, algorithms,” Data & Knowledge Engineering, vol. 70, no. 5, pp. 409–434, 2011. View at: Publisher Site  Google Scholar
 W. M. P. van der Aalst, Process Mining: Discovery, Conformance and Enhancement of Business Processes, Springer, Berlin, Germany, 2011.
 P. Weber, B. Bordbar, and P. Tino, “A framework for the analysis of process mining algorithms,” IEEE Transactions on Systems, Man, and Cybernetics: Systems, vol. 43, no. 2, pp. 303–317, 2013. View at: Publisher Site  Google Scholar
 W. M. P. van der Aalst and C. Stahl, Modeling Business Processes: A Petri Net Oriented Approach, MIT Press, Cambridge, MA, USA, 2011.
 A. Rozinat and W. M. P. van der Aalst, “Conformance checking of processes based on monitoring real behavior,” Information Systems, vol. 33, no. 1, pp. 64–95, 2008. View at: Publisher Site  Google Scholar
 R. P. J. C. Bose and W. M. P. van der Aalst, “Process diagnostics using trace alignment: opportunities, issues, and challenges,” Information System, vol. 37, no. 2, pp. 117–141, 2012. View at: Publisher Site  Google Scholar
 W. van der Aalst, A. Adriansyah, and B. van Dongen, “Replaying history on process models for conformance checking and performance analysis,” WIREs Data Mining and Knowledge Discovery, vol. 2, no. 2, pp. 182–192, 2012. View at: Publisher Site  Google Scholar
 Y. Y. Wang and Y. Y. Du, “Conformance checking based on extended footprint matrix,” Journal of Shandong University of Science and Technology(Natural Science), vol. 37, no. 2, pp. 9–15, 2018, in Chinese. View at: Google Scholar
 A. Adriansyah, B. F. V. Dongen, and W. M. P. van der Aalst, “Towards robust conformance checking,” in Business Process Management Workshops, pp. 122–133, Springer, Berlin, Germany, 2010. View at: Google Scholar
 M. de Leoni, F. M. Maggi, and W. M. P. van der Aalst, “Aligning event logs and declarative process models for conformance checking,” in Proceedings of the International Conference on Business Process Management, pp. 82–97, Springer, Tallinn, Estonia, September 2012. View at: Google Scholar
 A. Adriansyah, Aligning Observed and Modeled Behavior, Eindhoven University of Technology, Eindhoven, Netherlands, 2014.
 M. L. van Eck, Alignmentbased Process Model Repair and its Application to the Evolutionary Tree Miner, Eindhoven University of Technology, Eindhoven, Netherlands, 2013.
 D. Fahland and W. M. P. van der Aalst, “Model repairaligning process models to reality,” Information Systems, vol. 47, no. 1, pp. 220–243, 2015. View at: Publisher Site  Google Scholar
 A. Adriansyah, J. Munoz Gama, J. Carmona, B. F. V. Dongen, and W. M. P. van der Aalst, “Alignment based precision checking,” in Business Process Management Workshops, pp. 137–149, Springer, Berlin, Germany, 2013. View at: Google Scholar
 M. D. Leoni, F. M. Maggi, and W. M. P. van der Aalst, “An alignmentbased framework to check the conformance of declarative process models and to preprocess eventlog data,” Information Systems, vol. 47, no. 3, pp. 258–277, 2015. View at: Publisher Site  Google Scholar
 M. L. van Eck, J. C. A. M. Buijs, and B. F. van Dongen, “Genetic process mining: alignmentbased process model mutation,” in Proceedings of the International Conference on Business Process Management, pp. 291–303, Springer International Publishing, Haifa, Israel, September 2014. View at: Google Scholar
 J. E. Cook and A. L. Wolf, “Software process validation,” ACM Transactions on Software Engineering and Methodology (TOSEM), vol. 8, no. 2, pp. 147–176, 1999. View at: Publisher Site  Google Scholar
 X. Lu, D. Fahland, and W. M. P. van der Aalst, “Conformance checking in healthcare based on partially ordered event data,” in Emerging Technology and Factory Automation(ETFA), IEEE Press, Piscataway, NJ, USA, 2014. View at: Google Scholar
 X. Lu, D. Fahland, and W. M. P. van der Aalst, “Conformance checking based on partially ordered event data,” in Proceedings of the International Conference on Business Process Management, pp. 75–88, Springer International Publishing, Barcelona, Spain, 2014. View at: Google Scholar
 L. Wang, Y. Du, and W. Liu, “Aligning observed and modelled behaviour based on workflow decomposition,” Enterprise Information Systems, vol. 11, no. 8, pp. 1207–1227, 2017. View at: Publisher Site  Google Scholar
 W. Song, X. Xia, H.A. Jacobsen, P. Zhang, and H. Hu, “Efficient alignment between event logs and process models,” IEEE Transactions on Services Computing, vol. 10, no. 1, pp. 136–149, 2017. View at: Publisher Site  Google Scholar
 Y. Tian, Y. Du, M. Li, D. Han, and Q. Hu, “Reduced alignment based on Petri nets,” Concurrency and Computation: Practice and Experience, vol. 30, no. 23, Article ID e4411, 2018. View at: Publisher Site  Google Scholar
 T. Murata, “Petri nets: properties, analysis and applications,” Proceedings of the IEEE, vol. 77, no. 4, pp. 541–580, 1989. View at: Publisher Site  Google Scholar
 Q. Hu, M. Liu, Z. Zhao, and J. Du, “A path detecting method to analyze the interactive compatibility of service processes based on WSBPEL,” Concurrency and Computation: Practice and Experience, vol. 30, no. 19, p. e4699, 2018. View at: Publisher Site  Google Scholar
 N. Ran, H. Su, and S. Wang, “An improved approach to test diagnosability of bounded Petri nets,” IEEE/CAA Journal of Automatica Sinica, vol. 4, no. 2, pp. 297–303, 2017. View at: Publisher Site  Google Scholar
 N. Q. Wu and M. C. Zhou, “Modeling, analysis and control of dualarm cluster tools with residency time constraint and activity time variation based on petri nets,” IEEE Transactions on Automation Science and Engineering, vol. 9, no. 2, pp. 446–454, 2012. View at: Publisher Site  Google Scholar
 H.C. Liu, X. Luan, Z. Li, and J. Wu, “Linguistic Petri nets based on cloud model theory for knowledge representation and reasoning,” IEEE Transactions on Knowledge and Data Engineering, vol. 30, no. 4, pp. 717–728, 2018. View at: Publisher Site  Google Scholar
 G. Liu, “Some complexity results for the soundness problem of workflow nets,” IEEE Transactions on Services Computing, vol. 7, no. 2, pp. 322–328, 2014. View at: Publisher Site  Google Scholar
 L. J. Wen, Studies on Algorithms for Process Mining Based on WFNet, Tsinghua University, Beijing, China, 2007.
 W. W. Zhang and W. D. Liu, “Research of inclined shaft monitoring and control system of coal mine based on Petri net,” Computer Engineering and Applications, vol. 48, no. 20, pp. 240–243, 2012, in Chinese. View at: Google Scholar
Copyright
Copyright © 2020 Dong Han and Yinhua Tian. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.