Block-structured process mining method for incomplete event logs caused by concurrency
By employing a block-structured process mining method, utilizing the Inductive Miner and the forward graph partitioning operation, the problem of incomplete event logs caused by concurrency was solved, achieving higher-quality process model mining.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-14
- Publication Date
- 2026-04-07
AI Technical Summary
Existing process mining algorithms struggle to handle incomplete event logs caused by concurrency, resulting in poor quality of the mined process models.
A block-structured process mining method is adopted, which generates a block-structured process model by using the segmentation operation of Inductive Miner and the generation and segmentation of the front graph, combined with the collaborative filtering algorithm to handle uncertain relationships.
It can more accurately uncover high-quality process models, improving the understanding and analysis capabilities of the models.
Smart Images

Figure CN114201460B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the field of business process, and particularly relates to a block structure process mining method for incomplete event logs caused by concurrency. BACKGROUND
[0002] In the era of big data and digitization, many enterprises have deployed information systems to better manage enterprise resources and improve operational efficiency. In the daily operation of enterprise information systems, a large amount of event data is collected and recorded, such as enterprise financial audit logs, supply chain procurement event data, etc. Due to changes in business needs, business processes may also change, and managers need to improve the current business process. The current real business process of the enterprise can be reflected in the event logs of the enterprise in the recent period. Process mining technology can mine business process models from these event logs, and enterprise managers can find "bottlenecks" by analyzing the process model and improve the business process, thereby achieving the purpose of reducing operating costs and improving operational efficiency.
[0003] Event logs contain many event sequences, and events include activity name, occurrence time, operator, action, etc. The current mainstream process mining algorithm relies on high-quality event logs, such as requiring event logs to meet the completeness defined by it, which can guarantee a higher quality process model. However, real business processes often contain concurrent activities, and event logs containing concurrent activities often cannot meet the completeness required by process mining algorithms, resulting in poor quality of the mined process model. SUMMARY
[0004] The purpose of the present application is to provide a block structure process mining method for incomplete event logs caused by concurrency.
[0005] The technical solution for achieving the purpose of the present application is: a block structure process mining method for incomplete event logs caused by concurrency, which mines a block structure process model according to event log information; the event log in XES format is taken as input, and the process model in PTML format is taken as output, the process model is a process tree, which is a block structure process model, the leaf node is an event in the event log, and the non-leaf node is one of selection, sequence, loop and concurrency, and each subtree of the process tree is a block structure; the specific steps of the method are as follows:
[0006] Step 1: For an event log, use the splitting operation based on direct precedence in Inductive Miner to split the events it contains. The result of the splitting operation is several event sets. Based on the event sets, split the corresponding sub-logs from the original event log according to the projection. At this point, a preliminary process tree can be obtained. The type of splitting operation corresponds to the root node, and the split sub-logs are its child nodes. Continue to repeat the above operation to split the sub-logs until the sub-logs contain only one event. For sub-event logs that cannot be split normally, check whether there are duplicate and mutually exclusive events in each event sequence. If so, return a block structure flower model that can generate any event sequence for the event log; otherwise, proceed to Step 2.
[0007] Step 2: For the sub-logs that were not processed correctly in Step 1, traverse the event sequence to obtain the transitive relationship between events and generate a corresponding 0-1 matrix. An element 1 in the matrix indicates the existence of a transitive relationship, 0 indicates the absence of a transitive relationship, and the rest indicate uncertainty. Collaborative filtering is used to infer whether the uncertain elements in the 0-1 matrix have a transitive relationship. Then, a transitive graph is generated based on the inference results. Selection cut, sequential cut, or concurrent cut applied to the transitive graph are used for splitting operations, and the event log is split according to the splitting results. If the splitting is successful, the block structure corresponding to the sub-log is obtained; otherwise, a flower model corresponding to the event log is returned.
[0008] Step 3: Based on the nesting relationship, combine all block structures into a block structure process model represented by a process tree.
[0009] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the above-described method for mining block-structured process logs for incomplete event logs caused by concurrency.
[0010] A computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements the above-described method for mining block-structured process logs for incomplete event logs caused by concurrency.
[0011] Compared to Inductive Miner and its derivative algorithms, as well as the mainstream process mining algorithm Alpha, this invention can better handle incomplete event logs caused by concurrency, mine more accurate process models, and the discovered block-structured process models are easier to analyze and understand. Attached Figure Description
[0012] Figure 1 This is a flowchart of the block structure process mining method for incomplete event logs caused by concurrency, as proposed in this invention.
[0013] Figure 2 It is a schematic diagram of a process model displayed in the form of a process tree.
[0014] Figure 3 This is a diagram of an event log file described in XES format.
[0015] Figure 4 This is a schematic diagram of the event sequence set S obtained by parsing an XES format event log file.
[0016] Figure 5 This is a schematic diagram of the propagation-first matrix extracted from the event log.
[0017] Figure 6 This is a schematic diagram illustrating the process of applying concurrent cuts on the previous diagram. Detailed Implementation
[0018] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0019] This invention discloses a block-structured process mining method for incomplete event logs caused by concurrency. An event log is a collection of multiple event sequences. Each event includes information such as activity name, timestamp, and resources. Considering only event names and timestamps, the event sequence can be simplified to a series of event names with a chronological order. This invention uses event logs described in XES format as input and a process model described in PTML format as output. The specific process is shown in the appendix. Figure 1 As shown, the specific steps are as follows:
[0020] Step 1: For an event log, use the Inductive Miner's direct-precedence-based splitting operations (selective splitting, sequential splitting, loop splitting, and concurrent splitting) to split the events it contains, and then further split the event log according to the splitting results until each sub-log contains only one event. The specific steps are as follows:
[0021] Step 1-1: Use the splitting operation based on direct-precedence relationship defined in Inductive Miner to split the incomplete event log to determine the different block structures and their nesting relationships, until the sub-log contains only one event (i.e., it cannot be split further). Sub-logs that cannot be split normally need to be further processed.
[0022] Step 1-2: For the sub-logs that cannot be processed normally in Step 1-1, determine whether there are duplicate events or mutually exclusive events in each event sequence contained therein (i.e., whether they correspond to a loop or selection structure). If so, return a block structure flower model for the event log; otherwise, further processing is required.
[0023] Step 2: For the sub-logs that were not processed correctly in Step 1, traverse the event sequences to obtain the transitivity relationships between events and generate a corresponding 0-1 matrix. An element 1 in the matrix indicates the existence of a transitivity relationship, 0 indicates the absence of a transitivity relationship, and the rest indicate uncertainty. Collaborative filtering is used to predict the existence of transitivity relationships for the uncertain elements in the 0-1 matrix. Then, a transitivity graph is generated based on the prediction results. Selection cut, sequential cut, or concurrent cut applied to the transitivity graph is used for segmentation, and the event log is split based on the segmentation results. If the segmentation is successful, the block structure corresponding to the sub-log can be obtained; otherwise, a flower model corresponding to the event log is returned. The specific steps are as follows:
[0024] Step 2-1: For the sub-logs that were not processed in Step 1, traverse all event sequences to obtain all event pairs with a transitive relationship. Specifically, this includes any event sequence {a1, a2, a3, ..., a...} n-1 ,a n}, containing n events, where a i Let event i be an example. If these n events are arranged in chronological order, we can obtain N*(N-1) / 2 pairs of transitive precedence pairs: a1>a2, a1>a3, ..., a1>a4. n a2>a3, a2>a4,…, a2>a n ,…,a n-1 >a n Among them, a i >a j Representative event a i The transmission occurs in event a j Previously, a transitive 0-1 matrix was generated based on the transitive relationship between events. The first row and first column of the matrix were the event names. If the remaining elements were 1, it indicated that there was a transitive relationship between the event pairs corresponding to that element; 0 indicated that there was no transitive relationship; and other values indicated that it was uncertain whether a transitive relationship existed.
[0025] Step 2-2, for the event pairs corresponding to the uncertain elements in the 0-1 matrix i ,a j >, let a i The row vector is [a1, a2, ..., a i-1 ,a i+1 ,……,a j-1 ,a j+1 ,……,a n-1 ,a n ] for v i a j The column vector [a1, a2, ..., a i-1 ,a i+1 ,……,a j-1 ,a j+1 ,……,a n-1 ,a n ] T For v j Where n is the number of events in the matrix, and uncertain elements are treated as 0 during the calculation; according to the formula Where A and B represent vectors, calculate v i Cosine similarity to other row vectors, excluding a. j The row vector with the highest similarity outside of its own row vector Let the number of events be denoted as set S. u ; calculate v j Cosine similarity with other column vectors, excluding a i The column vector with the highest similarity outside of its own column vector Let the number of events be denoted as set S. i ;
[0026] Step 2-3: Based on Step 2-2, calculate S for all event pairs where the existence of a prior transitive relation is uncertain. u and S i Set, for each uncertain element M in the matrix x,y The inference result is Rating x,y According to the formula
[0027]
[0028] To calculate, where M r,c Represents event a in the matrix r With event a c The element value at position M r,y With M x,c Similarly, r represents the set S. u event a r c represents the set S i event a c λ and δ are linear interpolation parameters, fixed at 0.5 by default; all inference results are sorted in ascending order, and if the total number of inference results is m, then the i-th result is taken. The number of events is used as a threshold. If the inferred value is greater than the threshold or reaches 1, the corresponding event pair is judged to have a transitive relationship. Otherwise, it does not exist. Combining the previously determined event pairs with transitive relationships, we can generate a transitive graph (TPG), where vertices are events and directed arcs represent the transitive relationship from the start time to the target event.
[0029] Step 2-4: Based on the TPG obtained in Step 2-3, define three partitioning operations applied to the TPG: selective partitioning, sequential partitioning, and concurrent partitioning. Specifically, they are defined as follows:
[0030] Selective Cut: A selective cut can divide a TPG into multiple event sets ∑1,…,∑ m The event set must satisfy:
[0031] ·
[0032] Sequential cut: A sequential cut can divide a TPG into multiple ordered sets of events ∑1,…,∑ m The event set must satisfy:
[0033] ·
[0034] ·
[0035] Concurrent cut: A concurrent cut can divide TPG into multiple event sets ∑1,…,∑ m The event set must satisfy:
[0036] · in Indicates event a i To event a j There exists a transitive relationship, meaning there is a directly reachable path within the TPG. Following the order of selective slicing, sequential slicing, and concurrent slicing, a slicing operation is performed that divides the TPG into the most sub-TPGs, resulting in event sets corresponding to several sub-TPGs. The type of slicing operation is recorded. Based on the event sets, corresponding sub-logs are split from the incomplete sub-logs, and this slicing operation is repeated until all sub-logs contain only one event. If a sub-log cannot be split normally during this process, a flower model corresponding to that sub-log is returned.
[0037] Step 3: Based on the nesting relationship, combine all block structures into a block structure process model represented by a process tree.
[0038] The present invention will be further described below with reference to specific embodiments.
[0039] Example
[0040] This invention provides a method for mining block-structured processes from incomplete event logs caused by concurrency. It takes event logs described in XES format as input and outputs a block-structured process model represented by a process tree.
[0041] With an example, the specific steps of this method are as follows:
[0042] Step 1, Figure 2 This demonstrates a business process P modeled in the form of a process tree. Figure 3 The image shows a partial view of an event log L generated by P. This file is described in XES format, where the `trace` tag represents an event sequence and the `event` tag represents an event. This event log contains a total of 6 event sequences (traces). Considering only the event activity names, the resulting set of event sequences S is as follows: Figure 4 As shown; the preliminary results obtained by segmentation based on direct preceding relations as defined by Inductive Miner are: sequence < {a1}, {a2}, loop < sequence < {a3}, {a4, a5, a6, a7, a8, a9}, {a 10}>,{a 11}>,{a 12 Projecting and splitting the event log according to the segmentation results yields a process tree (block structure), whose expression is: sequence(a1, a2, loop(sequence)); Sub-logs corresponding to sets a4, a5, a6, a7, a8, and a9 Because of concurrent activities, it does not meet the direct-before-completeness requirement of the Inductive Miner, so it cannot perform the splitting operation normally; and because it does not contain repeated events or mutually exclusive events, there is no need to generate a flower model.
[0043] Step 2: Extract event logs that could not be processed in Step 1. In the transitive relation generation, such as Figure 5 The given 0-1 matrix shows five pairs of events in the transitive matrix where the existence of a transitive relationship cannot be determined.<a5,a4> ,<a7,a4> ,<a7,a6> ,<a9,a4> ,<a9,a8> The predicted scores, calculated from smallest to largest, are: R<a7,a6> =0.8917, R<a9,a8> =0.8917, R<a5,a4> =0.9442, R<a7,a4> =0.9452, R<a9,a4> =0.9452, taking 2 / 3 of the digits, 0.9442, as the threshold, then the event pair is determined.<a7,a4> and<a9,a4> There exists a transitive-first relation; the transitive-first graph is obtained based on the prediction results, and concurrent cuts applied to the transitive-first graph are used. Figure 6As shown, the result is: concurrency <{a4,a5},{a6,a7},{a8,a9}>; based on the segmentation result... Projective decomposition yields a sub-process tree (block structure), whose expression is: Concurrency Continue with sub-logs and The result of the splitting is: sequence (a4, a5), sequence (a6, a7), sequence (a8, a9).
[0044] Step 3: Combine all the block structures from Step 2 to successfully obtain... Figure 1 The process model shown is presented in the form of a process tree; this process model is consistent with the business process corresponding to the input event log, which shows that the present invention can correctly handle incomplete event logs caused by concurrency.
[0045] The above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for mining block-structured processes in incomplete event logs caused by concurrency, characterized in that, Based on event log information, a block-structured process model is mined. Using XES format event logs as input and PTML format process models as output, the process model is a process tree, a block-structured process model. Leaf nodes represent events in the event log, and non-leaf nodes represent one of the following: selection, sequence, loop, or concurrency. Each subtree of the process tree is a block structure. The specific steps of this method are as follows: Step 1: For an event log, use the Inductive Miner's splitting operation based on direct precedence to split the events it contains. The result of the splitting operation is several event sets. Based on the event sets, split the corresponding sub-logs from the original event log according to the projection. At this point, a preliminary process tree is obtained. The type of the splitting operation corresponds to the root node, and the split sub-logs are its child nodes. Continue to repeat the above operation on the sub-logs until the sub-logs contain only one event. For sub-event logs that cannot be split normally, check whether there are duplicate and mutually exclusive events in each event sequence. If so, return a block structure flower model that can generate any event sequence for the event log; otherwise, proceed to Step 2. Step 2: For the sub-logs that were not processed correctly in Step 1, traverse the event sequence to obtain the precedence relationship between events and generate the corresponding 0-1 matrix. The element 1 in the matrix indicates that there is a precedence relationship, 0 indicates that there is no precedence relationship, and the rest indicate uncertainty. Collaborative filtering is used to infer the existence of transitive relationships for uncertain elements in a 0-1 matrix. A transitive graph is then generated based on the inference results. Selection cut, sequential cut, or concurrent cut are applied to the transitive graph for segmentation. The event log is then split based on the splitting results. If the split is successful, the block structure corresponding to the sub-log is obtained; otherwise, a flower model corresponding to the event log is returned. Specifically: Step 2-1: Traverse all event sequences for the sub-logs that were not processed in Step 1, and obtain all event pairs with a transitive relationship; specifically, this includes any event sequence {a1, a2, a3, ..., a...} n-1 ,a n }, containing n events, where a i Let event i be an n-fold sequence of events. Arrange these n events in chronological order to obtain N*(N-1) / 2 pairs of transitive precedence pairs: a1>a2, a1>a3, ..., a1>a4. n a2>a3, a2>a4,…, a2>a n ,…,a n-1 >a n ; where a i >a j Representative event a i The transmission occurs in event a j Previously, a transitive 0-1 matrix was generated based on the transitive relationship between events. The first row and first column of the matrix were the event names. If the remaining elements were 1, it meant that there was a transitive relationship between the event pairs corresponding to that element. If they were 0, it meant that there was no transitive relationship. Other values indicated that it was uncertain whether there was a transitive relationship. Step 2-2, for the event pairs corresponding to the uncertain elements in the 0-1 matrix i ,a j >, let a i The row vector is [a1, a2, ..., a i-1 ,a i+1 ,……,a j-1 ,a j+1 ,……,a n-1 ,a n ] for v i a j The column vector [a1, a2, ..., a i-1 ,a i+1 ,……,a j-1 ,a j+1 ,……,a n-1 ,a n ] T For v j Where n is the number of events in the matrix, and uncertain elements are treated as 0 during the calculation; according to the formula Where A and B represent vectors, calculate v i Cosine similarity to other row vectors, excluding a. j The row vector with the highest similarity outside of its own row vector Let the number of events be denoted as set S. u ; calculate v j Cosine similarity with other column vectors, excluding a i The column vector with the highest similarity outside of its own column vector Let the number of events be denoted as set S. i ; Step 2-3: Based on Step 2-2, calculate S for all event pairs where the existence of a prior transitive relation is uncertain. u and S i Set, for each uncertain element M in the matrix x,y The inference result is Rating x,y According to the formula To calculate, where M r,c Represents event a in the matrix r With event a c The element value at position M r,y With M x,c Similarly, r represents the set S. u event a r c represents the set S i event a c λ and δ are linear interpolation parameters; all inference results are sorted in ascending order, and the total number of inference results is m, then the i-th result is taken. The number is used as a threshold. If the inference result is greater than the threshold or reaches 1, the corresponding event pair is judged to have a transitive relationship. Otherwise, it does not exist. Combined with the previously determined event pairs with transitive relationships, a transitive graph (TPG) is generated, where the vertices are events and the directed arcs represent the transitive relationship from the start time to the target event. Step 2-4: Based on the TPG obtained in Step 2-3, define three partitioning operations applied to the TPG: selective partitioning, sequential partitioning, and concurrent partitioning. Specifically, they are defined as follows: Selective Cut: A selective cut divides the TPG into multiple event sets Σ1,…,Σ. m The event set must satisfy: Sequential cut: A sequential cut divides the TPG into multiple ordered sets of events ∑1,…,Σ. m The event set must satisfy: Concurrent cut: A concurrent cut divides the TPG into multiple event sets Σ1,…,Σ m The event set must satisfy: in Indicates event a i To event a j There exists a transitive relationship, meaning there is a directly reachable path within the TPG. Following the order of selective slicing, sequential slicing, and concurrent slicing, a slicing operation is performed that divides the TPG into the most sub-TPGs, resulting in event sets corresponding to several sub-TPGs. The type of slicing operation is recorded. Based on the event sets, corresponding sub-logs are split from the incomplete sub-logs, and the above slicing operation is repeated until all sub-logs contain only one event. If a sub-log cannot be split normally during this process, a flower model corresponding to that sub-log is returned. Step 3: Based on the nesting relationship, combine all block structures into a block structure process model represented by a process tree.
2. The method for mining block-structured process logs caused by concurrency as described in claim 1, characterized in that, Step 1 specifically involves: Step 1-1: Use the splitting operation based on direct-precedence relationship defined in Inductive Miner to split the incomplete event log to determine the different block structures and their nesting relationships, until the sub-log contains only one event. Sub-logs that cannot be split normally need further processing. Step 1-2: For the sub-logs that cannot be processed normally in Step 1-1, determine whether there are duplicate events or mutually exclusive events in each event sequence contained therein. If so, return a block-structured flower model for the event log; otherwise, further processing is required.
3. The method for mining block-structured process logs caused by concurrency as described in claim 1, characterized in that, The segmentation operations described in step 1 include selective segmentation, sequential segmentation, cyclic segmentation, and concurrent segmentation.
4. The method for mining block-structured process logs caused by concurrency as described in claim 1, characterized in that, The values of λ and δ are 0.
5.
5. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the block structure process mining method for incomplete event logs caused by concurrency as described in any one of claims 1-4.
6. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by the processor, the program implements the block structure process mining method for incomplete event logs caused by concurrency as described in any of claims 1-4.
Citation Information
Patent Citations
Event log audit method based on workflow net model
CN105069306A
Process model repair method based on Petri net basic structures
CN105095491A