Distributed business process compliance checking method and system based on model decomposition

CN114926027BActive Publication Date: 2025-02-11SHANDONG UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210561612.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-23
Publication Date
2025-02-11
Estimated Expiration
2042-05-23

AI Technical Summary

Technical Problem

[0003]本发明的第一目的在于克服现有技术的缺点和不足,提出一种基于模型分解的分布式业务流程合规性检查方法,突破现有的合规性检查方法无法有效处理大型过程模型和事件日志,以及不保证找到最优对齐的问题,通过分解过程模型,将大型过程模型分解为较小的子过程模型,在分布式平台spark上进行分布式计算,实现在合理时间内计算大型过程模型和事件日志的合规性,同时保证合规性结果的准确性

Benefits of technology

[0047] 1. The present invention realizes compliance check calculation on a distributed platform for the first time, breaking through the limitations of computing large-scale process models and event log compliance checks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114926027B_ABST
    Figure CN114926027B_ABST
Patent Text Reader

Abstract

The present invention discloses a distributed business process compliance checking method and system based on model decomposition, including: 1) treating a process model as a directed graph, generating a candidate decomposition pair list; 2) obtaining decomposable library place pairs of the directed graph from the candidate decomposition pair list; 3) decomposing the original directed graph into subgraphs using the decomposable library place pairs; 4) iterating steps 1)-3) until the graph cannot be decomposed, deriving the subgraph as a submodel; 5) calculating the compliance of event logs and all submodels on a distributed platform spark. The present invention effectively improves the performance of the current alignment-based compliance checking method by decomposing the process model and distributed computing, while ensuring the accuracy of the optimal alignment, and can diagnose the deviation between a large process model and a real log within a reasonable time, and analyze the bottleneck of the large process model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of compliance checking in process mining, and in particular to a distributed business process compliance checking method and system based on model decomposition. Background Art

[0002] The calculation results of the compliance check can be used to check the compliance of the process model, diagnose the deviation between the process model and the real log, analyze the bottleneck of the process model, and then improve the process model. * However, as the scale of process data continues to expand, the scale of event logs and process models becomes larger and larger, which puts pressure on existing compliance checking methods, even those based on A * Alignment methods based on A * Alignment methods are difficult to give accurate results in a reasonable time. The process model decomposition methods currently used to handle large process models and event logs can speed up the alignment to a certain extent, but almost all current methods only focus on computing the alignment on a standalone machine, and there are some limitations on their effectiveness in handling large event logs and process models. In addition, most existing decomposition methods trade accuracy for performance and do not guarantee to find the optimal alignment. Summary of the invention

[0003] The first purpose of the present invention is to overcome the shortcomings and deficiencies of the prior art, and propose a distributed business process compliance checking method based on model decomposition, which breaks through the problem that the existing compliance checking method cannot effectively handle large process models and event logs, and does not guarantee the problem of finding the optimal alignment. By decomposing the process model, the large process model is decomposed into smaller sub-process models, and distributed computing is performed on the distributed platform spark, so as to calculate the compliance of the large process model and event log within a reasonable time, while ensuring the accuracy of the compliance results. The decomposition method and distributed implementation proposed by the present invention can be used as a framework application and combined with many alignment methods.

[0004] A second object of the present invention is to provide a distributed business process compliance checking system based on model decomposition.

[0005] To achieve the first objective of the present invention, the technical method provided by the present invention is: a distributed business process compliance checking method based on model decomposition, comprising the following steps:

[0006] 1) Treat the process model as a directed graph and generate a list of candidate decomposition pairs;

[0007] 2) Obtain decomposable library place pairs of the directed graph from the candidate decomposition pair list;

[0008] 3) Decompose the original directed graph into subgraphs using decomposable place pairs;

[0009] 4) Iterate the above steps 1)-3) until the graph cannot be decomposed, and derive the subgraph, i.e., submodel;

[0010] 5) Compute the event log and compliance of all sub-models on the distributed platform Spark.

[0011] Further, in step 1), the candidate decomposition pair is a binary place pair, that is, (p i ,p j ), satisfying the library place p i The number of elements in the back set and the place p j The number of elements in the previous set is greater than or equal to 2, indicating [p i ] and logo [p j ] are in the set of reachable identifiers of the process model, and there is no reachable identifier [p j ] to the mark [p i ], where p i is the starting place of decomposition, p j It is the end place of decomposition. The large process model is regarded as a directed graph and a list of candidate decomposition pairs is generated, including the following steps:

[0012] 1.1) Consider the process model as a directed graph, and mark the vertices in the directed graph as transitions and places respectively. Add all places with out-degree greater than or equal to 2 to the start place list SL, and add all places with in-degree greater than or equal to 2 to the end place list EL;

[0013] 1.2) Delete all place vertices with self-loops in the start place list SL and the end place list EL;

[0014] 1.3) For each place s in the list SL i and each place e in the list EL i , will be able to retrieve the i After depth-first search, we reach the library e i , from e i Depth-first search cannot reach s i The library pair (s i ,e i ) is added to the candidate decomposition pair list RL.

[0015] Further, the step 2) comprises the following steps:

[0016] 2.1) Traverse the candidate decomposition pair list RL and select the decomposition start place s closest to the initial place of the directed graph i , get s iAll candidate decomposition pairs (s i ,e i )

[0017] 2.2) Start with decomposition of place s i Starting from, for each e i , through breadth-first search, check s i Are all branches in e i If it can be merged, s i To e i The distance length is recorded as d, and the candidate decomposition pair (s i ,e i ), otherwise the candidate decomposition pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps 2.1)-2.2) are repeated;

[0018] 2.3) Set the threshold dis, if d>dis, then obtain the decomposable library pair (s i ,e i ), otherwise the candidate pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps 2.1)-2.3) are repeated until a decomposable library place pair that meets the requirements is found. If there is no decomposable library place pair, the decomposition ends.

[0019] Further, the step 3) comprises the following steps:

[0020] 3.1) Remove all decomposable pairs of places (s) obtained in step 2) from the original directed graph g i ,e i ) between all vertices and arcs, and obtain a graph rg;

[0021] 3.2) For each in s in graph g i The subsequent transition vertex t i , use breadth-first search to get t i and e i All vertices and arcs between them, get the graph gf i ;

[0022] 3.3) Each gf i , generate an end-to-end subgraph g through its union with rg i , subgraph g i Add to the temporary list gs;

[0023] 3.4) Put the graph g in the temporary list gs i Add to the ordered queue Q, and the graphs in the ordered queue Q are stored from large to small according to the number of transitions they contain.

[0024] Further, the step 4) comprises the following steps:

[0025] 4.1) From step 3), a subgraph with the largest number of transition vertices is dequeued from the ordered queue Q;

[0026] 4.2) Iterate steps 1)-3) on the subgraph until it cannot be decomposed any further, and add the subgraph that cannot be decomposed any further to the result list R;

[0027] 4.3) Export all subgraphs in the result list R as submodels.

[0028] Further, the step 5) comprises the following steps:

[0029] 5.1) Read the input event log L from the Hadoop distributed file system in the form of a resilient distributed dataset;

[0030] 5.2) Using broadcast-based parallel computing and A-based parallel computing on the distributed platform Spark * The alignment computes the alignment between all trajectories and all submodels in the event log;

[0031] 5.3) Merge the compliance check results on each slave node on the master node and select the alignment result with the lowest cost to form the final compliance check result;

[0032] Among them, the elastic distributed data set is a read-only partition record set, that is, the event log is split into multiple sub-log fragments, and the sub-log fragments are stored in different nodes of the Hadoop distributed file system in units of partitions; the event log L refers to a collection of trajectories, in which each trajectory is sorted in the order of event occurrence; the broadcast-based parallel computing means that all generated sub-models are broadcast to all slave nodes, and the alignment of sub-log fragments and sub-models is calculated in parallel on the slave nodes; the A*-based alignment computing means using the A* algorithm to traverse the synchronous product state space of the sub-model and the trajectory model, find a minimum cost execution path from the initial state to the final state, and obtain the alignment of the process model and the trajectory according to the movement type of the task on this execution path.

[0033] The second object of the present invention is achieved by the following technical solution: a distributed business process compliance checking system based on model decomposition, comprising a module for obtaining decomposable library pairs, a module for decomposing directed graphs, and a distributed business process compliance checking module;

[0034] The module for obtaining decomposable library place pairs regards the process model as a directed graph, generates a candidate decomposition pair list, and obtains decomposable library place pairs of the directed graph from the candidate decomposition pair list;

[0035] The directed graph decomposition module decomposes the original directed graph into subgraphs using the decomposable library, and iteratively decomposes until the graph cannot be decomposed, thereby deriving a subgraph, i.e., a submodel;

[0036] The distributed business process compliance checking module calculates the compliance of event logs and all sub-models on the distributed platform Spark.

[0037] Further, the acquisition of the decomposable library performs the following operations on the module:

[0038] The process model is regarded as a directed graph, and the vertices in the directed graph are marked as transitions and places respectively; all places with out-degree greater than or equal to 2 are added to the start place list SL, and all places with in-degree greater than or equal to 2 are added to the end place list EL; all places with self-loops in the start place list SL and the end place list EL are deleted; for each place s in the list SL i and each place e in the list EL i , will be able to retrieve the i After depth-first search, we reach the library e i , from e i Depth-first search cannot reach s i The library pair (s i ,e i ) is added to the candidate decomposition pair list RL;

[0039] Obtain the decomposable library pairs of the directed graph from the candidate decomposition pair list RL; traverse the candidate decomposition pair list RL and select the decomposition start library place s closest to the initial library place of the directed graph i , get s i All candidate decomposition pairs (s i ,e i ); starting from the decomposition place s i Starting from, for each e i , through breadth-first search, check s i Are all branches in e i If it can be merged, s i To e i The distance length is recorded as d, and the candidate decomposition pair (s i ,e i ), otherwise the candidate decomposition pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps of obtaining the decomposable library place pairs of the directed graph from the candidate decomposition pair list RL are repeated; a threshold value dis is set, and if d>dis, a decomposable library place pair (s i ,e i ), otherwise the candidate pair (s i ,ei ) is deleted from the candidate decomposition pair list RL, and the above steps of obtaining the decomposable library place pairs of the directed graph from the candidate decomposition pair list RL and setting the threshold are repeated until a decomposable library place pair that meets the requirements is found. If there is no decomposable library place pair, the decomposition ends;

[0040] The candidate decomposition pair is a binary place pair, that is, (p i ,p j ), satisfying the library place p i The number of elements in the back set and the place p j The number of elements in the previous set is greater than or equal to 2, indicating [p i ] and logo [p j ] are in the set of reachable identifiers of the process model, and there is no reachable identifier [p j ] to the mark [p i ], where p i is the starting place of decomposition, p j It is the end place of decomposition.

[0041] Further, the decomposition directed graph module performs the following operations:

[0042] Obtain decomposable library place pairs to decompose the original directed graph into subgraphs. First, remove all decomposable library place pairs (s i ,e i ) between all vertices and arcs, we get a graph rg; for each vertex and arc in s i The subsequent transition vertex t i , use breadth-first search to get t i and e i All vertices and arcs between them, get the graph gf i ; Each gf i , generate an end-to-end subgraph g through its union with rg i , subgraph g i Add to the temporary list gs; add the graph g in the temporary list gs i Add to the ordered queue Q. The graphs in the ordered queue Q are stored in descending order according to the number of transitions they contain. Dequeue a subgraph with the largest number of transition vertices from the ordered queue Q, iteratively call the above-mentioned module for obtaining decomposable library place pairs to obtain decomposable library place pairs, call the above-mentioned module for decomposing directed graphs to decompose the subgraph until the subgraph cannot be decomposed any further, add the subgraph that cannot be decomposed any further to the result list R, and export all subgraphs in the result list R as sub-models.

[0043] Further, the distributed business process compliance checking module performs the following operations:

[0044] Read the input event log L from the Hadoop distributed file system in the form of a resilient distributed dataset; use broadcast-based parallel computing and A-based parallel computing on the distributed platform Spark * The alignment of all trajectories and all sub-models in the event log is calculated; the compliance check results on each slave node are merged on the master node, and the alignment result with the lowest cost is selected to form the final compliance check result;

[0045] Among them, the elastic distributed data set is a read-only partition record set, that is, the event log is split into multiple sub-log fragments, and the sub-log fragments are stored in different nodes of the Hadoop distributed file system in units of partitions; the event log L refers to a collection of trajectories, in which each trajectory is sorted in the order of event occurrence; the broadcast-based parallel computing means that all generated sub-models are broadcast to all slave nodes, and the alignment of sub-log fragments and sub-models is calculated in parallel on the slave nodes; the A*-based alignment computing means using the A* algorithm to traverse the synchronous product state space of the sub-model and the trajectory model, find a minimum cost execution path from the initial state to the final state, and obtain the alignment of the process model and the trajectory according to the movement type of the task on this execution path.

[0046] Compared with the prior art, the present invention has the following advantages and beneficial effects:

[0047] 1. The present invention realizes compliance check calculation on a distributed platform for the first time, breaking through the limitations of calculating compliance checks on large process models and event logs.

[0048] 2. The present invention realizes the decomposition of the process model and accelerates the current alignment-based compliance checking method.

[0049] 3. The present invention ensures the accuracy of optimal alignment based on the decomposition model.

[0050] 4. The present invention provides technical support for diagnosing the deviation between large process models and real logs, analyzing the bottlenecks of large process models, and then improving the process models.

[0051] 5. The present invention has a wide range of applications in compliance checks of large process models and event logs, is simple to operate, has strong adaptability, and has broad prospects in calculating the compliance of large process models. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] Figure 1 The figure is a logical flow chart of the method of the present invention.

[0053] Figure 2 This is an example diagram of the use case process model of the present invention.

[0054] Figure 3This is an intermediate result graph of directed graph decomposition using the example of the present invention.

[0055] Figure 4 This is the result diagram of the sub-model decomposition of the use case of the present invention.

[0056] Figure 5 This is a system architecture diagram of the present invention. DETAILED DESCRIPTION

[0057] The present invention will be further described below in conjunction with specific embodiments.

[0058] Example 1

[0059] This embodiment discloses a distributed business process compliance checking method based on model decomposition, such as Figure 1 As shown, the following steps are included:

[0060] 1) Treat the process model as a directed graph and generate a list of candidate decomposition pairs, including the following steps:

[0061] 1.1) Consider the process model as a directed graph, and mark the vertices in the directed graph as transitions and places respectively. Add all places with out-degree greater than or equal to 2 to the start place list SL, and add all places with in-degree greater than or equal to 2 to the end place list EL;

[0062] 1.2) Delete all place vertices with self-loops in the start place list SL and the end place list EL;

[0063] 1.3) For each place s in the list SL i and each place e in the list EL i , will be able to retrieve the i After depth-first search, we reach the library e i , from e i Depth-first search cannot reach s i The library pair (s i ,e i ) is added to the candidate decomposition pair list RL. An example of a process model is Figure 2 As shown, the circles represent the places, the rectangles represent the transitions, and their serial numbers are the numbers of the places.

[0064] The candidate decomposition pair is a binary place pair, that is, (p i ,p j ), satisfying the library place p i The number of elements in the back set and the place p j The number of elements in the previous set is greater than or equal to 2, indicating [p i ] and logo [p j ] are in the set of reachable identifiers of the process model, and there is no reachable identifier [pj ] to the mark [p i ], where p i is the starting place of decomposition, p j It is the end place of decomposition.

[0065] Using the above steps to calculate, the candidate decomposition pair list RL is {p8 = [p 15 ,p9,p 32 ,p 26 ],p5=[p 15 ,p9,p 32 ,p 26 ],p2=[p 15 ,p9,p 25 ,p 32 ,p 26 ],p 27 =[p 32 ],p 22 =[p 25 ,p 32 ,p 26 ]}.

[0066] 2) Obtaining decomposable library place pairs of the directed graph from the candidate decomposition pair list, including the following steps:

[0067] 2.1) Traverse the candidate decomposition pair list RL and select the decomposition start place s closest to the initial place of the directed graph i , get s i All candidate decomposition pairs (s i ,e i )

[0068] 2.2) Start with decomposition of place s i Starting from, for each e i , through breadth-first search, check s i Are all branches in e i If it can be merged, s i To e i The distance length is recorded as d, and the candidate decomposition pair (s i ,e i ), otherwise the candidate decomposition pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps 2.1)-2.2) are repeated;

[0069] 2.3) Set the threshold dis, if d>dis, then obtain the decomposable library pair (s i ,e i ), otherwise the candidate pair (s i ,e i) is deleted from the candidate decomposition pair list RL, and the above steps 2.1)-2.3) are repeated until a decomposable library place pair that meets the requirements is found. If there is no decomposable library place pair, the decomposition ends.

[0070] Using the above steps, setting the threshold to 4, we get d = 9, and we get the decomposable library pair (p2, p 26 ).

[0071] 3) Decomposing the original directed graph into subgraphs using decomposable place pairs includes the following steps:

[0072] 3.1) Remove all decomposable pairs of places (s) obtained in step 2) from the original directed graph g i ,e i ) between all vertices and arcs, and obtain a graph rg;

[0073] 3.2) For each in s in graph g i The subsequent transition vertex t i , use breadth-first search to get t i and e i All vertices and arcs between them, get the graph gf i ;

[0074] 3.3) Each gf i , generate an end-to-end subgraph g through its union with rg i , subgraph g i Add to the temporary list gs;

[0075] 3.4) Put the graph g in the temporary list gs i Add to the ordered queue Q, and the graphs in the ordered queue Q are stored from large to small according to the number of transitions they contain.

[0076] According to the above steps, the intermediate result of directed graph decomposition is obtained. The subgraphs g1 and g2 are as follows: Figure 3 As shown, the ordered queue Q = [g1, g2], where the circles represent the places, the rectangles represent the transitions, and their serial numbers are the numbers of the places.

[0077] 4) Iterate the above process until the graph cannot be decomposed, and the derived subgraph is, that is, the submodel, including the following steps:

[0078] 4.1) From step 3), a subgraph with the largest number of transition vertices is dequeued from the ordered queue Q;

[0079] 4.2) Iterate the above steps 1)-3) for the subgraph until it cannot be decomposed any further, and add the subgraph that cannot be decomposed any further to the result list R;

[0080] 4.3) Export all subgraphs in the result list R as submodels.

[0081] According to the above steps, the decomposition sub-model results are obtained as follows Figure 4 As shown, the circles represent the places, the rectangles represent the transitions, and their serial numbers are the numbers of the places.

[0082] 5) Compute the event log and compliance of all sub-models on the distributed platform Spark, including the following steps:

[0083] 5.1) Read the input event log L from the Hadoop distributed file system in the form of a resilient distributed dataset;

[0084] 5.2) Using broadcast-based parallel computing and A-based parallel computing on the distributed platform Spark * The alignment computes the alignment between all trajectories and all submodels in the event log;

[0085] 5.3) Merge the compliance check results on each slave node on the master node and select the alignment result with the lowest cost to form the final compliance check result;

[0086] Among them, the elastic distributed data set is a read-only partition record set, that is, the event log is split into multiple sub-log fragments, and the sub-log fragments are stored in different nodes of the Hadoop distributed file system in units of partitions; the event log L refers to a collection of trajectories, in which each trajectory is sorted in the order of event occurrence; the broadcast-based parallel computing means that all generated sub-models are broadcast to all slave nodes, and the alignment of sub-log fragments and sub-models is calculated in parallel on the slave nodes; the A*-based alignment computing means using the A* algorithm to traverse the synchronous product state space of the sub-model and the trajectory model, find a minimum cost execution path from the initial state to the final state, and obtain the alignment of the process model and the trajectory according to the movement type of the task on this execution path.

[0087] According to the above steps, the compliance check result is calculated, that is, the fit between the process model and the event log is 0.9.

[0088] Example 2

[0089] This embodiment discloses a distributed business process compliance checking system based on model decomposition. The system architecture is as follows: Figure 5 As shown, it includes a module for obtaining decomposable library pairs, a module for decomposing directed graphs, and a module for checking the compliance of distributed business processes.

[0090] The module for obtaining decomposable library place pairs regards the process model as a directed graph, generates a candidate decomposition pair list, and obtains decomposable library place pairs of the directed graph from the candidate decomposition pair list;

[0091] The directed graph decomposition module decomposes the original directed graph into subgraphs using the decomposable library, and iteratively decomposes until the graph cannot be decomposed, thereby deriving a subgraph, i.e., a submodel;

[0092] The distributed business process compliance checking module calculates the compliance of event logs and all sub-models on the distributed platform Spark.

[0093] Further, the decomposable library is obtained to perform the following operations on the module:

[0094] The process model is considered as a directed graph, and the vertices in the directed graph are marked as transitions and places. Add all places with out-degree greater than or equal to 2 to the start place list SL, and add all places with in-degree greater than or equal to 2 to the end place list EL; delete all places with self-loops in the start place list SL and the end place list EL; for each place s in the list SL i and each place e in the list EL i , will be able to retrieve the i After depth-first search, we reach the library e i , from e i Depth-first search cannot reach s i The library pair (s i ,e i ) is added to the candidate decomposition pair list RL;

[0095] Obtain the decomposable library pairs of the directed graph from the candidate decomposition pair list RL. Traverse the candidate decomposition pair list RL and select the decomposition start library place s closest to the initial library place of the directed graph i , get s i All candidate decomposition pairs (s i ,e i ); starting from the decomposition place s i Starting from, for each e i , through breadth-first search, check s i Are all branches in e i If it can be merged, s i To e i The distance length is recorded as d, and the candidate decomposition pair (s i ,e i ), otherwise the candidate decomposition pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps of obtaining the decomposable library place pairs of the directed graph from the candidate decomposition pair list RL are repeated; a threshold value dis is set, and if d>dis, a decomposable library place pair (s i ,e i ), otherwise the candidate pair (s i ,ei ) is deleted from the candidate decomposition pair list RL, and the above steps of obtaining the decomposable library place pairs of the directed graph from the candidate decomposition pair list RL and setting the threshold are repeated until a decomposable library place pair that meets the requirements is found. If there is no decomposable library place pair, the decomposition ends;

[0096] The candidate decomposition pair is a binary place pair, that is, (p i ,p j ), satisfying the library place p i The number of elements in the back set and the place p j The number of elements in the previous set is greater than or equal to 2, indicating [p i ] and logo [p j ] are in the set of reachable identifiers of the process model, and there is no reachable identifier [p j ] to the mark [p i ], where p i is the starting place of decomposition, p j It is the end place of decomposition.

[0097] Furthermore, the directed graph decomposition module specifically performs the following operations:

[0098] Obtain decomposable library place pairs to decompose the original directed graph into subgraphs. First, remove all decomposable library place pairs (s i ,e i ) between all vertices and arcs, we get a graph rg; for each vertex and arc in s i The subsequent transition vertex t i , use breadth-first search to get t i and e i All vertices and arcs between them, get the graph gf i ; Each gf i , generate an end-to-end subgraph g through its union with rg i , subgraph g i Add to the temporary list gs; add the graph g in the temporary list gs i Add to the ordered queue Q. The graphs in the ordered queue Q are stored in descending order according to the number of transitions they contain. Dequeue a subgraph with the largest number of transition vertices from the ordered queue Q, iteratively call the above-mentioned module for obtaining decomposable library place pairs to obtain decomposable library place pairs, call the above-mentioned module for decomposing directed graphs to decompose the subgraph until the subgraph cannot be decomposed any further, add the subgraph that cannot be decomposed any further to the result list R, and export all subgraphs in the result list R as sub-models.

[0099] Furthermore, the distributed business process compliance checking module specifically performs the following operations:

[0100] Read the input event log L from the Hadoop distributed file system in the form of a resilient distributed dataset; use broadcast-based parallel computing and A-based parallel computing on the distributed platform Spark * The alignment of all trajectories and all sub-models in the event log is calculated; the compliance check results on each slave node are merged on the master node, and the alignment result with the lowest cost is selected to form the final compliance check result;

[0101] Among them, the elastic distributed data set is a read-only partition record set, that is, the event log is split into multiple sub-log fragments, and the sub-log fragments are stored in different nodes of the Hadoop distributed file system in units of partitions; the event log L refers to a collection of trajectories, in which each trajectory is sorted in the order of event occurrence; the broadcast-based parallel computing means that all generated sub-models are broadcast to all slave nodes, and the alignment of sub-log fragments and sub-models is calculated in parallel on the slave nodes; the A*-based alignment computing means using the A* algorithm to traverse the synchronous product state space of the sub-model and the trajectory model, find a minimum cost execution path from the initial state to the final state, and obtain the alignment of the process model and the trajectory according to the movement type of the task on this execution path.

[0102] To sum up, after adopting the above scheme, the present invention provides a new method for the calculation of compliance checks of large process models and event logs. By decomposing process models and distributed computing, it can effectively accelerate the current alignment-based compliance check method while ensuring the accuracy of the optimal alignment. It can effectively diagnose the deviation between large process models and real logs, and analyze the bottlenecks of large process models. It has practical promotion value and is worthy of promotion.

[0103] The above-described embodiments are only preferred embodiments of the present invention and are not intended to limit the scope of implementation of the present invention. Therefore, all changes made according to the shape and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A distributed business process compliance checking method based on model decomposition, characterized in that: The following steps are involved: 1) Treat the process model as a directed graph and generate a list of candidate decomposition pairs; The candidate decomposition pair is a binary place pair, that is, (p i ,p j ), satisfying the library place p i The number of elements in the back set and the place p j The number of elements in the previous set is greater than or equal to 2, indicating [p i ] and logo [p j ] are in the set of reachable identifiers of the process model, and there is no reachable identifier [p j ] to the mark [p i ], where p i is the starting place of decomposition, p j It is the end place of decomposition. The large process model is regarded as a directed graph and a list of candidate decomposition pairs is generated, including the following steps: 1.1) Consider the process model as a directed graph, and mark the vertices in the directed graph as transitions and places respectively. Add all places with out-degree greater than or equal to 2 to the start place list SL, and add all places with in-degree greater than or equal to 2 to the end place list EL; 1.2) Delete all place vertices with self-loops in the start place list SL and the end place list EL; 1.3) For each place s in the list SL i and each place e in the list EL i , will be able to retrieve the i After depth-first search, we reach the library e i , from e i Depth-first search cannot reach s i The library pair (s i ,e i ) is added to the candidate decomposition pair list RL; 2) Obtaining decomposable library place pairs of the directed graph from the candidate decomposition pair list, including the following steps: 2.1) Traverse the candidate decomposition pair list RL and select the decomposition start place s closest to the initial place of the directed graph i , get s i All candidate decomposition pairs (s i ,e i ) 2.2) Start with decomposition of place s i Starting from, for each e i , through breadth-first search, check s i Are all branches in e i If it can be merged, s i To e i The distance length is recorded as d, and the candidate decomposition pair (s i ,e i ), otherwise the candidate decomposition pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps 2.1)-2.2) are repeated; 2.3) Set the threshold dis, if d>dis, then obtain the decomposable library pair (s i ,e i ), otherwise the candidate pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps 2.1)-2.3) are repeated until a decomposable library place pair that meets the requirements is found. If there is no decomposable library place pair, the decomposition ends; 3) Decomposing the original directed graph into subgraphs using decomposable place pairs includes the following steps: 3.1) Remove all decomposable pairs of places (s) obtained in step 2) from the original directed graph g i ,e i ) between all vertices and arcs, and obtain a graph rg; 3.2) For each in s in graph g i The subsequent transition vertex t i , use breadth-first search to get t i and e i All vertices and arcs between them, get the graph gf i ; 3.3) Each gf i , generate an end-to-end subgraph g through its union with rg i , subgraph g i Add to the temporary list gs; 3.4) Subgraph g in the temporary list gs i Add to the ordered queue Q. The graphs in the ordered queue Q are stored in descending order according to the number of transitions they contain. 4) Iterate the above steps 1)-3) until the graph cannot be decomposed, and derive the subgraph, i.e., the submodel, including the following steps: 4.1) From step 3), a subgraph with the largest number of transition vertices is dequeued from the ordered queue Q; 4.2) Iterate steps 1)-3) on the subgraph until it cannot be decomposed any further, and add the subgraph that cannot be decomposed any further to the result list R; 4.3) Export all subgraphs in the result list R as submodels; 5) Compute the event log and compliance of all sub-models on the distributed platform Spark.

2. The distributed business process compliance checking method based on model decomposition according to claim 1 is characterized in that: The step 5) comprises the following steps: 5.1) Read the input event log L from the Hadoop distributed file system in the form of a resilient distributed dataset; 5.2) Using broadcast-based parallel computing and A-based parallel computing on the distributed platform Spark * The alignment computes the alignment between all trajectories and all submodels in the event log; 5.3) Merge the compliance check results on each slave node on the master node and select the alignment result with the lowest cost to form the final compliance check result; Among them, the elastic distributed data set is a read-only partition record set, that is, the event log is split into multiple sub-log fragments, and the sub-log fragments are stored in different nodes of the Hadoop distributed file system in units of partitions; the event log L refers to a collection of trajectories, in which each trajectory is sorted in the order of event occurrence; the broadcast-based parallel computing means that all generated sub-models are broadcast to all slave nodes, and the alignment of sub-log fragments and sub-models is calculated in parallel on the slave nodes; the A*-based alignment computing means using the A* algorithm to traverse the synchronous product state space of the sub-model and the trajectory model, find a minimum cost execution path from the initial state to the final state, and obtain the alignment of the process model and the trajectory according to the movement type of the task on this execution path.

3. A distributed business process compliance checking system based on model decomposition, characterized in that: It includes a module for obtaining decomposable library pairs, a module for decomposing directed graphs, and a module for checking the compliance of distributed business processes; The module for obtaining decomposable library place pairs regards the process model as a directed graph, generates a candidate decomposition pair list, and obtains decomposable library place pairs of the directed graph from the candidate decomposition pair list; The directed graph decomposition module decomposes the original directed graph into subgraphs using the decomposable library, and iteratively decomposes until the graph cannot be decomposed, thereby deriving a subgraph, i.e., a submodel; The distributed business process compliance check module calculates the compliance of event logs and all sub-models on the distributed platform spark; The acquisition of the decomposable library performs the following operations on the module: The process model is regarded as a directed graph, and the vertices in the directed graph are marked as transitions and places respectively; all places with out-degree greater than or equal to 2 are added to the start place list SL, and all places with in-degree greater than or equal to 2 are added to the end place list EL; Delete all places with self-loops in the start place list SL and the end place list EL; for each place s in the list SL i and each place e in the list EL i , will be able to retrieve the i After depth-first search, we reach the library e i , from e i Depth-first search cannot reach s i The library pair (s i ,e i ) is added to the candidate decomposition pair list RL; Obtain the decomposable library pairs of the directed graph from the candidate decomposition pair list RL; traverse the candidate decomposition pair list RL and select the decomposition start library place s closest to the initial library place of the directed graph i , get s i All candidate decomposition pairs (s i ,e i ); starting from the decomposition place s i Starting from, for each e i , through breadth-first search, check s i Are all branches in e i If it can be merged, s i To e i The distance length is recorded as d, and the candidate decomposition pair (s i ,e i ), otherwise the candidate decomposition pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps of obtaining the decomposable library place pairs of the directed graph from the candidate decomposition pair list RL are repeated; a threshold value dis is set, and if d>dis, a decomposable library place pair (s i ,e i ), otherwise the candidate pair (s i ,e i ) is deleted from the candidate decomposition pair list RL, and the above steps of obtaining the decomposable library place pairs of the directed graph from the candidate decomposition pair list RL and setting the threshold are repeated until a decomposable library place pair that meets the requirements is found. If there is no decomposable library place pair, the decomposition ends; Among them, the candidate decomposition pair is a binary library pair, that is, (p i ,p j ), satisfying the library place p i The number of elements in the back set and the place p j The number of elements in the previous set is greater than or equal to 2, indicating [p i ] and logo [p j ] are in the set of reachable identifiers of the process model, and there is no reachable identifier [p j ] to the mark [p i ], where p i is the starting place of decomposition, p j It is the end place of decomposition; The decomposition directed graph module performs the following operations: Obtain decomposable library place pairs to decompose the original directed graph into subgraphs. First, remove all decomposable library place pairs (s i ,e i ) between all vertices and arcs, we get a graph rg; for each vertex and arc in s i The subsequent transition vertex t i , use breadth-first search to get t i and e i All vertices and arcs between them, get the graph gf i ; Each gf i , generate an end-to-end subgraph g through its union with rg i , subgraph g i Add to the temporary list gs; add the graph g in the temporary list gs i Add to the ordered queue Q. The graphs in the ordered queue Q are stored in descending order according to the number of transitions they contain. Dequeue a subgraph with the largest number of transition vertices from the ordered queue Q, iteratively call the above-mentioned module for obtaining decomposable library place pairs to obtain decomposable library place pairs, call the above-mentioned module for decomposing directed graphs to decompose the subgraph until the subgraph cannot be decomposed any further, add the subgraph that cannot be decomposed any further to the result list R, and export all subgraphs in the result list R as sub-models.

4. The distributed business process compliance checking system based on model decomposition according to claim 3 is characterized in that: The distributed business process compliance checking module performs the following operations: Read the input event log L from the Hadoop distributed file system in the form of a resilient distributed dataset; use broadcast-based parallel computing and A-based parallel computing on the distributed platform Spark * The alignment computes the alignment between all trajectories and all submodels in the event log; The compliance check results on each slave node are merged on the master node, and the alignment result with the lowest cost is selected to form the final compliance check result; Among them, the elastic distributed data set is a read-only partition record set, that is, the event log is split into multiple sub-log fragments, and the sub-log fragments are stored in different nodes of the Hadoop distributed file system in units of partitions; the event log L refers to a collection of trajectories, in which each trajectory is sorted in the order of event occurrence; the broadcast-based parallel computing means that all generated sub-models are broadcast to all slave nodes, and the alignment of sub-log fragments and sub-models is calculated in parallel on the slave nodes; the A*-based alignment computing means using the A* algorithm to traverse the synchronous product state space of the sub-model and the trajectory model, find a minimum cost execution path from the initial state to the final state, and obtain the alignment of the process model and the trajectory according to the movement type of the task on this execution path.

Citation Information

Patent Citations

  • Service combination behavior compliance measurement method based on trace dependence graphs

    CN106293648A

  • Service approval parameter configuration method and device

    CN111815169A