Process data simulation method and device, electronic equipment and readable storage medium
By automating the generation of process data simulation parameters, the problem of low efficiency in manual analysis is solved, and efficient process data simulation is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING FANDE TECH CO LTD
- Filing Date
- 2025-07-14
- Publication Date
- 2026-07-31
AI Technical Summary
In existing technologies, manual analysis of simulation parameters during process data simulation is inefficient, resulting in low simulation efficiency.
By acquiring initial log data, simulation parameters are automatically generated based on the business process model, including determining activity graphical elements, gateway graphical elements, and gateway sequences. The business process model is mined using the Alpha algorithm and the inductive mining algorithm, and the probability distribution and branch probability values are calculated. The business process simulator is then configured to generate target simulation data.
Simulation parameters can be generated automatically without human intervention, improving the efficiency and accuracy of process data simulation and saving on manual analysis costs.
Smart Images

Figure CN120849280B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of data simulation technology, and in particular relates to a process data simulation method and apparatus, electronic device, and computer-readable storage medium. Background Technology
[0002] Business process simulation is essentially used to model real-world or planned processes, providing a low-cost method to determine the effectiveness or value of business processes. Analysts can assign operational information to a business process simulator and then evaluate the quality or effectiveness of the solution based on the information received from the simulator. The business process simulator can be run an arbitrary number of times to adjust the configuration information. Analysts can also perform simulations of current and future states of processes as needed, typically investigating only critical or problematic processes.
[0003] However, during business process simulation, analysts need to actively input business process models and simulation requirement data into the simulator. For large amounts of log data, analysts need to manually analyze the data patterns in the log data to obtain simulation parameters, and then input the simulation parameters into the business process simulator, resulting in low simulation efficiency of process data.
[0004] The information disclosed in this background section is intended only to enhance the understanding of the overall background of the invention and should not be construed as an admission or in any way implying that the information constitutes prior art known to those skilled in the art. Summary of the Invention
[0005] The purpose of this disclosure is to solve the technical problem of low efficiency in manual analysis of simulation parameters during process data simulation, and to provide a process data simulation method and apparatus.
[0006] The first aspect of this disclosure provides a process data simulation method, which includes: acquiring initial log data; determining a business process model based on the initial log data; obtaining simulation parameters based on the initial log data and the business process model; configuring and running a business process simulator based on the simulation parameters and simulation requirement data to obtain target simulation data output by the business process simulator.
[0007] In one embodiment of this disclosure, the method further includes: determining the occurrence time of each log process within a preset time period based on initial log data; calculating the probability distribution of the occurrence time to obtain the occurrence probability result; and adding the occurrence probability result to the simulation parameters.
[0008] In one embodiment of this disclosure, obtaining simulation parameters based on initial log data and a business process model includes: determining the activity graphic elements corresponding to the activity based on the business process model; filtering out activity log data related to the activity graphic elements from the initial log data; extracting the execution objects of the activity from the activity log data, and statistically analyzing the correlation between the execution objects and the object departments; and using the business process model, the execution objects, and the object departments related to the execution objects as simulation parameters.
[0009] In one embodiment of this disclosure, obtaining simulation parameters based on initial log data and a business process model includes: determining the gateway graphical elements corresponding to the gateway based on the business process model; filtering gateway log data related to the gateway graphical elements from the initial log data; calculating the branch probability value of each branch flow direction of the gateway based on the gateway log data; and using the business process model, the gateway, and the branch probability value as simulation parameters.
[0010] In one embodiment of this disclosure, obtaining simulation parameters based on initial log data and a business process model includes: determining the activity graphic elements corresponding to the activity based on the business process model; filtering out activity log data related to the activity graphic elements from the initial log data; calculating the probability distribution of the activity's working time based on the activity log data, and using the business process model and probability distribution as simulation parameters.
[0011] In one embodiment of this disclosure, obtaining simulation parameters based on initial log data and a business process model includes: determining a first element sequence corresponding to a gateway sequence based on the business process model; filtering first log data related to the first element sequence from the initial log data; calculating the branch probability value of branch traffic for each gateway in the gateway sequence based on the first log data; detecting whether the number of each branch flow direction of each gateway in the gateway sequence is greater than a quantity threshold for each gateway; in response to detecting that the number of branch flow directions is greater than the quantity threshold, sampling the first log data based on a set proportion of the number of branch flow directions to obtain a sampling result; calculating the probability distribution of working time based on the sampling result; in response to detecting that the number of branch flow directions is less than the quantity threshold, sampling data from the first log data according to the number of branch flow directions to obtain a sampling result; calculating the probability distribution of working time based on the sampling result; and using the business process model, branch probability value, and probability distribution as simulation parameters.
[0012] In one embodiment of this disclosure, determining the business process model based on initial log data includes: extracting activity data related to the activity from the initial log data; and using an inductive mining algorithm to mine the activity data to obtain the business process model.
[0013] A second aspect of this disclosure provides a process data simulation apparatus, comprising: an acquisition unit configured to acquire initial log data; a determination unit configured to determine a business process model based on the initial log data; a obtaining unit configured to obtain simulation parameters based on the initial log data and the business process model; and a simulation unit configured to configure and run a business process simulator based on the simulation parameters and simulation requirement data, thereby obtaining target simulation data output by the business process simulator.
[0014] In one embodiment of this disclosure, the apparatus further includes an adding unit configured to: determine the occurrence time of each log process within a preset time period based on initial log data; calculate the probability distribution of the occurrence time to obtain the occurrence probability result; and add the occurrence probability result to the simulation parameters.
[0015] In one embodiment of this disclosure, the aforementioned obtaining unit is configured to: determine the activity graphic elements corresponding to the activity based on the business process model; filter out the activity log data related to the activity graphic elements from the initial log data; extract the execution object of the activity from the activity log data, and statistically analyze the correlation between the execution object and the object department, using the business process model, the execution object, and the object department related to the execution object as simulation parameters.
[0016] In one embodiment of this disclosure, the aforementioned obtaining unit is configured to: determine the gateway graphical element corresponding to the gateway based on the business process model; filter gateway log data related to the gateway graphical element from the initial log data; calculate the branch probability value of each branch flow direction of the gateway based on the gateway log data; and use the business process model, the gateway, and the branch probability value as simulation parameters.
[0017] In one embodiment of this disclosure, the aforementioned obtaining unit is configured to: determine the activity graphic element corresponding to the activity based on the business process model; filter out activity log data related to the activity graphic element from the initial log data; calculate the probability distribution of the activity's working time based on the activity log data, and use the business process model and probability distribution as simulation parameters.
[0018] In one embodiment of this disclosure, the aforementioned obtaining unit is configured to: determine a first element sequence corresponding to a gateway sequence based on a business process model; filter first log data related to the first element sequence from initial log data; calculate the branch probability value of branch traffic for each gateway in the gateway sequence based on the first log data; for each gateway in the gateway sequence, detect whether the number of each branch flow direction of that gateway is greater than a quantity threshold; in response to detecting that the number of branch flow directions is greater than the quantity threshold, sample the first log data based on a set proportion of the number of branch flow directions to obtain a sampling result; calculate the probability distribution of working time based on the sampling result; in response to detecting that the number of branch flow directions is less than the quantity threshold, sample data from the first log data according to the number of branch flow directions to obtain a sampling result; calculate the probability distribution of working time based on the sampling result; and use the business process model, branch probability value, and probability distribution as simulation parameters.
[0019] In one embodiment of this disclosure, the determining unit is configured to: extract activity-related data from initial log data; and mine the activity data using an inductive mining algorithm to obtain a business process model.
[0020] According to a third aspect, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor, wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform a method as described in any implementation of the first aspect.
[0021] According to a fourth aspect, a non-transitory computer-readable storage medium is provided that stores computer instructions for causing a computer to perform the method described in any implementation of the first aspect.
[0022] The process data simulation method and apparatus provided in the embodiments of this disclosure first acquire initial log data; second, based on the initial log data, determine a business process model; third, based on the initial log data and the business process model, obtain simulation parameters; and finally, based on the simulation parameters and simulation requirement data, configure and run a business process simulator to obtain the target simulation data output by the business process simulator. Thus, simulation parameters are automatically generated using initial log data and the business process model, eliminating the need for manual intervention, saving the cost of manual process analysis, and improving the efficiency of process data simulation. Attached Figure Description
[0023] Figure 1 This is a flowchart of one embodiment of the process data simulation method according to this disclosure;
[0024] Figure 2This is a structural diagram of the business process model in this disclosure;
[0025] Figure 3 This is a schematic diagram of the structure of one embodiment of the process data simulation device according to the present disclosure;
[0026] Figure 4 This is a block diagram of an electronic device used to implement the process data simulation method of the embodiments of this disclosure. Detailed Implementation
[0027] Unless otherwise expressly stated, throughout the specification and claims, the term "comprising" or its variations such as "including" or "comprises" shall be understood to include the stated elements or components without excluding other elements or other components.
[0028] The technical solution of the present invention is illustrated below through specific embodiments. It should be understood that the one or more steps mentioned in the present invention do not preclude the existence of other methods and steps before or after the combined steps, or that other methods and steps may be inserted between these explicitly mentioned steps. It should also be understood that these examples are for illustrative purposes only and are not intended to limit the scope of the present invention. Unless otherwise stated, the numbering of each method step is only for the purpose of identifying each method step, and not for limiting the order of each method or limiting the scope of the present invention. Changes or adjustments to their relative relationships, without substantial changes to the technical content, can also be considered as within the scope of the present invention.
[0029] The raw materials and instruments used in the examples are not subject to any specific restrictions on their source; they can be purchased from the market or prepared according to conventional methods known to those skilled in the art.
[0030] Process simulation is a function developed to facilitate users in simulating the operation of certain processes. One requirement of this function is that users need to make the simulation results as close as possible to their existing processes, so that when only some simulation parameters are changed, the simulation data can be easily compared with the existing process data. Therefore, this disclosure introduces the function of mining simulation parameters from initial log data.
[0031] To address the shortcomings of existing technologies, this disclosure provides a process data simulation method. Figure 1 A process 100 illustrating an embodiment of a process data simulation method is shown. The process data simulation method includes the following steps:
[0032] Step 101: Obtain initial log data.
[0033] In this embodiment, the initial log data is the initial data for simulating business process data. The initial log data is the activity log information of the event handling process, generally the activity operation log of the business event handling process. The initial log data reflects the business process of the business event, which consists of multiple activities. The initial log data includes: the ID of the instance corresponding to the business event, the activity name, the time, the parent activity primary key, the primary key, etc. The initial log data stores the data information at the time the business event occurs. The logs can be stored in the system's log file or in a log table.
[0034] In this embodiment, initial log data can be obtained through various means. For example, it can be obtained from a log monitoring system, which can save logs to log files according to the system-configured log format when processing business events through an interceptor, and then read the event log file to obtain event log information. Optionally, initial log data can also be obtained from other servers through wired or wireless data transmission methods. Optionally, initial log data can also be data read from a database.
[0035] Step 102: Determine the business process model based on the initial log data.
[0036] In this embodiment, the Business Process Model and Notation (BPM) is a method and tool for business process management. As a graphical representation of business processes, the BPM is widely used in enterprise process management and system design. The BPM consists of various graphical elements, such as... Figure 2 As shown, the graphical elements include the following categories: Events: Representing key nodes in the process, such as start events, intermediate events, and end events, etc. Figure 2 In this context, K and G represent the specific tasks within a process, such as user tasks, service tasks, etc. Figure 2 The process includes steps such as "Submit Application," "Director Approval," "Finance Approval," and "Cashier Payment." Gateways are used to control the branching and convergence of processes, such as parallel gateways and exclusive gateways. Figure 2 W1 and W2 in the diagram. Flows: Connect the various elements and represent the execution order of the process.
[0037] In this embodiment, step 102 includes: using the Alpha algorithm to transform the initial log data into a business process model. Specifically, the above-mentioned use of the Alpha algorithm to transform the initial log data into a business process model includes: the Alpha algorithm abstracts four basic relationships among the activities occurring in the initial log data: accompaniment, causality, parallelism, and irrelevance; then, based on the type of basic relationship, a direct follow-activity relationship graph is generated, and the follow-activity relationship graph is transformed into the corresponding business process model.
[0038] Optionally, step 102 above includes: constructing a direct follow-up activity relationship diagram based on the direct follow-up activity relationships in the initial log data; then defining four splitting operators—selection, sequence, concurrency, and loop—to recursively divide the generated direct follow-up activity relationship diagram to obtain a set of process tree languages, thereby constructing a block-structured process tree and transforming the process tree into a business process model.
[0039] Step 103: Based on the initial log data and business process model, obtain simulation parameters.
[0040] In this embodiment, the simulation parameters are the parameters of the business process simulator. The business process simulator uses computer technology to simulate and analyze business processes in order to better understand, optimize, and adjust the processes. In this embodiment, the business process simulator analyzes the business process model, determines the process relationship of the initial log data, modifies the determined process relationship based on the user's simulation requirement data, and generates target simulation data according to the modified process. The data flow of the target simulation data is the same as the flow of the business process model and is close to the initial log data.
[0041] In this embodiment, the business process simulator can employ various simulation methods, including offline simulation and real-time simulation. Offline simulation simulates the business process on a computer based on the business process model, analyzes the running effect of the process under different conditions corresponding to the initial log data, and provides a reference for process optimization; real-time simulation, on the other hand, monitors and analyzes the business process in real time using actual running data, enabling dynamic adjustments to the process.
[0042] In this embodiment, step 103 includes: determining basic process data based on initial log data; using the basic process data and the business process model as simulation parameters, wherein the basic process data includes: the distribution of occurrence times of each process in the initial log data; and the instances where each process is located in the initial log data. Determining the basic process data based on the initial log data includes: determining a process composed of multiple activities within a historical time period based on the initial log data; determining the occurrence time of each process within the multiple processes, using a statistical algorithm to statistically analyze the occurrence times to obtain the distribution of occurrence times for each process; and determining the instance corresponding to each occurrence time to obtain the instance where each process is located.
[0043] Step 104: Based on the simulation parameters and simulation requirement data, configure and run the business process simulator to obtain the target simulation data output by the business process simulator.
[0044] In this embodiment, the target simulation data is log data generated by the business process simulator. The data obtained after reversing the process of the target simulation data through the simulation requirement data is the same as the initial log data. That is, the target simulation data is the log data that is closest to the initial log data. For example, the target simulation data is: application submission event start time XX1, executor XX2, executor department XX3; application submission event end time XX4, executor XX5, executor department XX6; director approval event start time XX7, executor XX8, executor department XX9; director approval event end time XX10, executor XX11, executor department XX12.
[0045] In this embodiment, the simulation requirement data is the simulation requirement of the user or developer. The simulation requirement data includes: modification data of events, activities and gateways in the business process model. The simulation parameters are the parameters of the process by which the business process simulator generates the target simulation data. The business process simulator generates log data according to the content indicated by the simulation parameters. Specifically, step 104 includes: after obtaining the simulation parameters, the business process simulator determines the target process of the target simulation data to be generated; based on the simulation requirement data, the target process is modified to obtain the modified process; and the target simulation data is generated based on the modified process.
[0046] Optionally, 104 may further include: inputting simulation parameters into a business process simulator to obtain initial simulation data output by the business process simulator; detecting whether the similarity between the initial simulation data and the initial log data is greater than a similarity threshold; in response to detecting that the similarity between the initial simulation data and the initial log data is greater than the similarity threshold, converting the simulation requirement data into a process improvement requirement; and modifying the initial simulation data based on the process improvement requirement to obtain the target simulation data.
[0047] In this embodiment, on the one hand, the user's configuration of simulation parameters is reduced, and on the other hand, it is closer to the original data, making it convenient for the user to perform the simulation after changing some parameters. The data generated by the subsequent simulation is analyzed and compared with the original data in sync, so as to better grasp the pain points in the process.
[0048] In this embodiment, the simulation parameters include: business process model, execution object and related object department, probability distribution of log process (i.e. probability of occurrence), branch probability value of gateway, and probability distribution of activity working time. In traditional technology, these parameters are all manually input and cannot be obtained automatically. This disclosure can automatically obtain all parameters in the simulation parameters, or obtain some parameters in the simulation parameters.
[0049] The process data simulation method provided in this disclosure first obtains initial log data; second, based on the initial log data, a business process model is determined; third, based on the initial log data and the business process model, simulation parameters are obtained; finally, based on the simulation parameters and simulation requirement data, a business process simulator is configured and run to obtain the target simulation data output by the business process simulator. Thus, simulation parameters are automatically generated using initial log data and the business process model, eliminating the need for manual intervention, saving the cost of manual process analysis, and improving the efficiency of process data simulation.
[0050] In one embodiment of this disclosure, the method further includes: determining the occurrence time of each log process within a preset time period based on initial log data; calculating the probability distribution of the occurrence time to obtain the occurrence probability result; and adding the occurrence probability result to the simulation parameters.
[0051] In this embodiment, the log flow is the flow of events in the initial log data. For the same log flow, it may or may not appear in different instances. For example, a log flow may only be generated during working hours from Monday to Friday, and the occurrence of each log flow tends to a certain normal distribution.
[0052] In this embodiment, determining the occurrence time of each log process within a preset time period based on the initial log data includes: using a data statistics algorithm to count the occurrence time of each log process in the initial log data.
[0053] In this embodiment, the above-mentioned calculation of the probability distribution of occurrence time to obtain the occurrence probability result includes: using a Fitter package-based goodness-of-fit calculation method to calculate the probability distribution of occurrence time to obtain the occurrence probability result.
[0054] In this embodiment, the simulation parameters include: occurrence probability results and business process model. The occurrence probability results enable the business process simulator to determine the generation time of each log process.
[0055] The process data simulation method provided in this embodiment determines the occurrence time of each log process within a preset time period based on initial log data; calculates the probability distribution of the occurrence time to obtain the occurrence probability result; and adds the occurrence probability result to the simulation parameters, which makes the business process simulator clearer about the content generated by the target simulation data and improves the accuracy of the target simulation data.
[0056] In some optional implementations of this disclosure, the simulation parameters obtained based on the initial log data and business process model include: determining the activity graphic elements corresponding to the activity based on the business process model; filtering out activity log data related to the activity graphic elements from the initial log data; extracting the execution objects of the activity from the activity log data, and statistically analyzing the correlation between the execution objects and the object departments, using the business process model, the execution objects, and the object departments related to the execution objects as simulation parameters.
[0057] In this optional implementation, the business process model includes: activity graphical elements for each activity in different log processes, where the activity graphical elements are graphical elements in the business process model related to the activities in the log, such as... Figure 2 The process includes "Submit Application", "Director Approval", "Finance Approval", and "Cashier Payment".
[0058] In this optional implementation, the execution object is the object of the execution activity, and the object department is the department where the execution object is located. The correlation between the execution object and the object department refers to the relationship between the execution object and the object department. For example, the correlation could be that the execution object has stayed in the object department for five days, or that the related object has resided in the object department for a long time. By analyzing the correlation between the execution object and the object department, the attributes of the activity can be reflected more effectively. Specifically, the above-mentioned statistical correlation between the execution object and the object department includes: using the KMeans clustering algorithm to determine the correlation between the execution object and the object department, such as the number of times execution object A appears in object department B, and the number of times execution object A appears in object department C.
[0059] In this optional implementation, the activity log data is the activity-related data in the initial log data. By statistically analyzing the correlation between the execution object and the object department for each activity in the activity log data, the business process simulator can better understand the execution object of each activity.
[0060] The method for obtaining simulation parameters provided by this optional implementation is based on the business process model. It determines the activity graphical elements corresponding to the activity; filters out activity log data related to the activity graphical elements from the initial log data; extracts the execution objects of the activity from the activity log data, and counts the correlation between the execution objects and the object departments. By using the business process model, execution objects, and object departments related to the execution objects as simulation parameters, the information of the simulation parameters can be enriched, and the accuracy and comprehensiveness of the process data simulation can be improved.
[0061] In some optional implementations of this disclosure, the simulation parameters obtained based on the initial log data and the business process model include: determining the gateway graphical elements corresponding to the gateway based on the business process model; filtering gateway log data related to the gateway graphical elements from the initial log data; calculating the branch probability values of each branch flow direction of the gateway based on the gateway log data; and using the business process model, the gateway, and the branch probability values as simulation parameters.
[0062] In this optional implementation, the business process model includes: gateway graphical elements for each gateway in different log processes. These gateway graphical elements are the gateway-related graphical elements in the logs within the business process model, and the gateway log data is the gateway-related data from the initial log data, such as... Figure 2 W1 and W2 in the model. The gateway graphical element corresponding to the gateway obtained through the business process model can be the graphical element of all gateways in the business process model.
[0063] In this optional implementation, the branching flow of the gateway refers to how the gateway determines the next step of the process based on conditional judgments in the flowchart. The gateway controls the flow of the process; based on different conditional judgments, the process can choose different branches to continue execution. The branch probability value is the probability of each branching flow occurring within the same gateway, such as... Figure 2 As shown, gateway W1 has two branches: Branch 1: Submit application - Director approval - Cashier payment; Branch 2: Submit application - General financial approval - Cashier payment. The branch probability value of Branch 1 is obtained by dividing the number of processes in Branch 1 by the total number of processes traversed by the gateway. The above calculation of the branch probability values for each branch flow direction of the gateway, based on gateway log data, includes: using a clustering algorithm to statistically analyze the flow direction of each branch of each gateway in the gateway log data, obtaining the branch probability value for each branch flow direction of each gateway. By using the branch probability values, the flow direction of the target simulation data generated by the business process simulator during simulation can be made more consistent with the probability of the initial log data.
[0064] The method for obtaining simulation parameters provided by this optional implementation is based on the business process model, which determines the gateway graphical elements corresponding to the gateway; filters gateway log data related to the gateway graphical elements from the initial log data; and calculates the branch probability values of each branch flow direction of the gateway based on the gateway log data. By using the business process model, gateway, and branch probability values as simulation parameters, the business process simulator can effectively know the probability of the initial log data, thus improving the accuracy of obtaining the target simulation data.
[0065] In some optional implementations of this disclosure, the simulation parameters obtained based on the initial log data and the business process model include: determining the activity graphic elements corresponding to the activity based on the business process model; filtering out activity log data related to the activity graphic elements from the initial log data; calculating the probability distribution of the activity's working time based on the activity log data, and using the business process model and probability distribution as simulation parameters.
[0066] In this optional implementation, the activity graphical element is the graphical element of the activity in the business process model, and the probability distribution is used to reflect the distribution of the activity's working time over all time periods. The above calculation of the probability distribution of the activity's working time based on activity log data includes: performing statistical calculations on the activity log data based on the Fitter package goodness-of-fit calculation method to obtain the probability distribution of the activity's working time.
[0067] The optional implementation provides a method for obtaining simulation parameters that, based on the business process model, determines the activity graphical elements corresponding to the activity; filters out activity log data related to the activity graphical elements from the initial log data; and calculates the probability distribution of the activity's working time based on the activity log data. By using the business process model and probability distribution as simulation parameters, the working time of the generated activity can better match the distribution of the activity's working time in the initial log during business process simulator simulation, thereby making the generated target simulation data more closely match the initial log data.
[0068] In some optional implementations of this disclosure, the simulation parameters obtained based on the initial log data and the business process model include: determining the first element sequence corresponding to the gateway sequence based on the business process model; filtering the first log data related to the first element sequence from the initial log data; calculating the branch probability value of the branch traffic of each gateway in the gateway sequence based on the first log data; detecting whether the number of each branch flow direction of each gateway in the gateway sequence is greater than a quantity threshold for each gateway; in response to detecting that the number of branch flow directions is greater than the quantity threshold, sampling the first log data based on a set proportion of the number of branch flow directions to obtain a sampling result; calculating the probability distribution of working time based on the sampling result; in response to detecting that the number of branch flow directions is less than the quantity threshold, sampling data from the first log data according to the number of branch flow directions to obtain a sampling result; calculating the probability distribution of working time based on the sampling result; and using the business process model, branch probability value, and probability distribution as simulation parameters.
[0069] In this optional implementation, the gateway sequence is the gateways ordered from the initial log data, the first element sequence is the sequence obtained by ordering the graphical elements of each gateway from the position of the initial graphical element in the business process model, and the first log data is the data selected from the initial log data based on the information of each gateway in the gateway sequence.
[0070] In this optional implementation, the quantity threshold is a limit value set for the number of branch flows, the setting ratio is a ratio set for the number of branch flows, and the sampling result is a random sample of branch flows from the first log data according to the value of the set ratio. For example, in the first log data, there are 100,000 branch flows 1, and sampling is performed at 20% of the quantity (set ratio), that is, 20,000 are sampled; there are 10,000 branch flows 2, and 2,000 are sampled; there are 1,000 branch flows 3, and since the quantity threshold is 1,000, branch flow 3 is not sampled, and the quantity of branch flow 3 is directly used to sample from the first log data.
[0071] In this optional implementation, the above-mentioned calculation of the probability distribution of working time based on the sampling results includes: performing statistical calculations on the sampling results based on the goodness-of-fit calculation method of the Fitter package to obtain the probability distribution of working time.
[0072] In this embodiment, when the number of branch flows is greater than the number threshold, it is perfectly feasible to perform a probability distribution analysis of normal working time. However, after the number of branch flows exceeds the number threshold, it is unnecessary to perform a probability distribution analysis of working time using all branch flows of that number. Therefore, by selecting a corresponding proportion of branch flows from the first log data to perform a probability distribution analysis of working time, the amount of data to be analyzed can be effectively saved.
[0073] It should be noted that when analyzing gateway sequences, the branch flows of each gateway can be analyzed sequentially according to the order in which they appear in the sequence. This can gradually reduce the amount of data computation required for the activities corresponding to each gateway. For example... Figure 2 First, we analyze the flow directions of the two branches of gateway W1 and calculate the probability distribution of the working time of activities flowing down the two branches of gateway W1. Then, we analyze the flow directions of the two branches of gateway W2 and calculate the probability distribution of the working time of activities flowing down the two branches of gateway W2.
[0074] The method for calculating simulation parameters provided by this optional implementation involves, for each gateway in the gateway sequence, detecting whether the number of each branch flow direction of that gateway is greater than a quantity threshold; in response to detecting that the number of branch flow directions is greater than the quantity threshold, sampling first log data based on a set proportion of the number of branch flow directions to obtain sampling results; calculating the probability distribution of working time based on the sampling results; in response to detecting that the number of branch flow directions is less than the quantity threshold, sampling data from the first log data according to the number of branch flow directions to obtain sampling results; calculating the probability distribution of working time based on the sampling results; using the business process model, branch probability values, and probability distribution as simulation parameters effectively reduces the amount of data analysis and improves the efficiency of obtaining simulation parameters.
[0075] In some optional implementations of this disclosure, the above-mentioned determination of the business process model based on initial log data includes: extracting activity-related data from the initial log data; and using an inductive mining algorithm to mine the activity data to obtain the business process model.
[0076] In this optional implementation, based on existing processes or activity data within processes, an inductive mining algorithm is used to mine processes that follow the business process model. The inductive mining algorithm can be the open-source PM4Py Inductive Miner algorithm. PM4Py's inductive mining algorithm is designed to implement process mining functionality. It uses the PM4 library to process and analyze data to discover potential patterns, relationships, and associations in the data.
[0077] The optional implementation provides a method for determining the business process model, which uses an inductive mining algorithm to mine activity data, providing a reliable way to obtain the business process model and improving the reliability of the obtained business process model.
[0078] Further reference Figure 3 As an implementation of the methods shown in the above figures, this disclosure provides an embodiment of a process data simulation device, which is similar to... Figure 1 Corresponding to the method embodiments shown, this device can be specifically applied to various electronic devices.
[0079] like Figure 3 As shown, the process data simulation device 300 provided in this embodiment includes: an acquisition unit 301, a determination unit 302, a obtaining unit 303, and a simulation unit 304. The acquisition unit 301 can be configured to acquire initial log data. The determination unit 302 can be configured to determine a business process model based on the initial log data. The obtaining unit 303 can be configured to obtain simulation parameters based on the initial log data and the business process model. The simulation unit 304 can be configured to configure and run a business process simulator based on the simulation parameters and simulation requirement data, and obtain the target simulation data output by the business process simulator.
[0080] In this embodiment, the process data simulation device 300 includes: an acquisition unit 301, a determination unit 302, an acquisition unit 303, and a simulation unit 304. The specific processing and technical effects of these units can be found in the following references: Figure 1 The relevant descriptions of steps 101, 102, 103, and 104 in the corresponding embodiments will not be repeated here.
[0081] In one embodiment of this disclosure, the apparatus further includes an adding unit (not shown in the figure), which is configured to: determine the occurrence time of each log process in a preset time period based on initial log data; calculate the probability distribution of the occurrence time to obtain the occurrence probability result; and add the occurrence probability result to the simulation parameters.
[0082] In one embodiment of this disclosure, the aforementioned obtaining unit 303 is configured to: determine the activity graphic elements corresponding to the activity based on the business process model; filter out the activity log data related to the activity graphic elements from the initial log data; extract the execution object of the activity from the activity log data, and statistically analyze the correlation between the execution object and the object department, and use the business process model, the execution object, and the object department related to the execution object as simulation parameters.
[0083] In one embodiment of this disclosure, the obtaining unit 303 is configured to: determine the gateway graphical element corresponding to the gateway based on the business process model; filter gateway log data related to the gateway graphical element from the initial log data; calculate the branch probability value of each branch flow of the gateway based on the gateway log data; and use the business process model, the gateway, and the branch probability value as simulation parameters.
[0084] In one embodiment of this disclosure, the aforementioned obtaining unit 303 is configured to: determine the activity graphic element corresponding to the activity based on the business process model; filter out the activity log data related to the activity graphic element from the initial log data; calculate the probability distribution of the activity's working time based on the activity log data, and use the business process model and probability distribution as simulation parameters.
[0085] In one embodiment of this disclosure, the obtaining unit 303 is configured to: determine a first element sequence corresponding to a gateway sequence based on a business process model; filter first log data related to the first element sequence from initial log data; calculate the branch probability value of branch traffic for each gateway in the gateway sequence based on the first log data; for each gateway in the gateway sequence, detect whether the number of each branch flow direction of the gateway is greater than a quantity threshold; in response to detecting that the number of branch flow directions is greater than the quantity threshold, sample the first log data based on a set proportion of the number of branch flow directions to obtain a sampling result; calculate the probability distribution of working time based on the sampling result; in response to detecting that the number of branch flow directions is less than the quantity threshold, sample data from the first log data according to the number of branch flow directions to obtain a sampling result; calculate the probability distribution of working time based on the sampling result; and use the business process model, branch probability value, and probability distribution as simulation parameters.
[0086] In one embodiment of this disclosure, the determining unit 302 is configured to: extract activity-related data from the initial log data; and use an inductive mining algorithm to mine the activity data to obtain a business process model.
[0087] In the process data simulation apparatus provided in this embodiment of the present disclosure, firstly, the acquisition unit 301 acquires initial log data; secondly, the determination unit 302 determines the business process model based on the initial log data; thirdly, the obtaining unit 303 obtains simulation parameters based on the initial log data and the business process model; finally, the simulation unit 304 configures and runs the business process simulator based on the simulation parameters and simulation requirement data, and obtains the target simulation data output by the business process simulator. Thus, simulation parameters are automatically generated using initial log data and the business process model, eliminating the need for manual intervention and saving the cost of manual process analysis. The extraction of simulation parameters improves the efficiency and accuracy of process data simulation.
[0088] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0089] Figure 4A schematic block diagram of an example electronic device 400 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their patterns are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0090] like Figure 4 As shown, device 400 includes a computing unit 401, which can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) 402 or a computer program loaded from storage unit 408 into random access memory (RAM) 403. RAM 403 may also store various programs and data required for the operation of device 400. The computing unit 401, ROM 402, and RAM 403 are interconnected via bus 404. Input / output (I / O) interface 405 is also connected to bus 404.
[0091] Multiple components in device 400 are connected to I / O interface 405, including: input unit 406, such as keyboard, mouse, etc.; output unit 407, such as various types of monitors, speakers, etc.; storage unit 408, such as disk, optical disk, etc.; and communication unit 409, such as network card, modem, wireless transceiver, etc. Communication unit 409 allows device 400 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0092] The computing unit 401 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 401 performs the various methods and processes described above, such as the process data simulation method. For example, in some embodiments, the process data simulation method may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 408. In some embodiments, part or all of the computer program may be loaded and / or installed on device 400 via ROM 402 and / or communication unit 409. When the computer program is loaded into RAM 403 and executed by the computing unit 401, one or more steps of the process data simulation method described above may be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to perform the process data simulation method by any other suitable means (e.g., by means of firmware).
[0093] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0094] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to the processor or controller of a general-purpose computer, special-purpose computer, or other programmable flow data emulation device, such that when executed by the processor or controller, the program code causes the patterns / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0095] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0096] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0097] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0098] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0099] The foregoing description of specific exemplary embodiments of the invention is for illustrative and explanatory purposes. These descriptions are not intended to limit the invention to the precise forms disclosed, and it will be apparent that many changes and variations can be made in accordance with the foregoing teachings. The exemplary embodiments were chosen and described in order to explain the specific principles of the invention and its practical application, thereby enabling those skilled in the art to implement and utilize various different exemplary embodiments of the invention, as well as various different choices and variations. The scope of the invention is intended to be defined by the claims and their equivalents.
Claims
1. A method of process data simulation, characterized by, The method includes: Get initial log data; Based on the initial log data, a business process model is determined; Based on the initial log data and the business process model, the simulation parameters are obtained as follows: Based on the business process model, determine the activity graphical elements corresponding to the activity; filter out activity log data related to the activity graphical elements from the initial log data; extract the execution objects of the activity from the activity log data, and use the KMeans clustering algorithm to determine the correlation between the execution objects and the object departments, using the business process model, the execution objects, and the object departments related to the execution objects as simulation parameters; Based on the business process model, determine the first element sequence corresponding to the gateway sequence; filter out the first log data related to the first element sequence from the initial log data; Based on the first log data, calculate the branch probability value of the branch traffic of each gateway in the gateway sequence; and analyze each gateway in the gateway sequence according to their order. The branch flow of the gateway is optimized to gradually reduce the data computation volume of the corresponding activities of the gateway. Specifically, for each gateway in the gateway sequence, the number of each branch flow of the gateway is checked to see if it is greater than a threshold. In response to the detection that the number of branch flows is greater than the threshold, the first log data is sampled based on a set proportion of the number of branch flows to obtain a sampling result. Based on the sampling result, the probability distribution of the working time of the activity is calculated using a Fitter packet-based goodness-of-fit calculation method. In response to the detection that the number of branch flows is less than the threshold, data is sampled from the first log data according to the number of branch flows to obtain a sampling result. Based on the sampling result, the probability distribution of the working time is calculated using a Fitter packet-based goodness-of-fit calculation method. The business process model, the branch probability value, and the probability distribution are added to the simulation parameters. Based on the simulation parameters and simulation requirement data, the business process simulator is configured and run to obtain the target simulation data output by the business process simulator.
2. The method of claim 1, wherein, The method further includes: Based on the initial log data, determine the occurrence time of each log process within the preset time period; Calculate the probability distribution of the occurrence time to obtain the occurrence probability result; Add the occurrence probability result to the simulation parameters.
3. The method of claim 1, wherein, The simulation parameters obtained based on the initial log data and the business process model include: Based on the business process model, determine the gateway graphical elements corresponding to the gateway; Filter the gateway log data related to the gateway graphical elements from the initial log data; Based on the gateway log data, calculate the branch probability value of each branch flow direction of the gateway; The business process model, the gateway, and the branch probability value are used as simulation parameters.
4. The method of claim 1, wherein, The simulation parameters obtained based on the initial log data and the business process model include: Based on the business process model, determine the activity graphic elements corresponding to the activity; Filter out the activity log data related to the activity graphic element from the initial log data; Based on the activity log data, calculate the probability distribution of the activity's working time. The business process model and the probability distribution are used as simulation parameters.
5. The method according to any one of claims 1 to 4, characterized in that, The process of determining the business process model based on the initial log data includes: Extract activity data related to the activity from the initial log data; The inductive mining algorithm is used to mine the activity data to obtain the business process model.
6. A process data simulation apparatus, characterized by The device includes: The acquisition unit is configured to acquire initial log data; The determining unit is configured to determine the business process model based on the initial log data; The obtaining unit is configured to obtain simulation parameters based on the initial log data and the business process model. The obtaining unit is configured to: determine the activity graphical elements corresponding to the activity based on the business process model; filter activity log data related to the activity graphical elements from the initial log data; extract the execution objects of the activity from the activity log data, and use the KMeans clustering algorithm to determine the correlation between the execution objects and the object departments, using the business process model, the execution objects, and the object departments related to the execution objects as simulation parameters; determine the first element sequence corresponding to the gateway sequence based on the business process model; filter the first log data related to the first element sequence from the initial log data; calculate the branch probability value of the branch traffic of each gateway in the gateway sequence based on the first log data; analyze the branch flow direction of each gateway in the gateway sequence according to the order of each gateway, so as to gradually reduce the data calculation amount of the activity corresponding to the gateway, specifically: for each gateway in the gateway sequence, detect the number of branch flows of each gateway. Whether the quantity is greater than a quantity threshold; in response to detecting that the quantity of a branch flow is greater than the quantity threshold, sample the first log data based on a set proportion of the quantity of the branch flow to obtain a sampling result; based on the sampling result, calculate the probability distribution of the activity's working time using a Fitter package-based goodness-of-fit calculation method; in response to detecting that the quantity of a branch flow is less than the quantity threshold, sample data from the first log data according to the quantity of the branch flow to obtain a sampling result; based on the sampling result, calculate the probability distribution of the working time using a Fitter package-based goodness-of-fit calculation method; add the business process model, the branch probability value, and the probability distribution to the simulation parameters; The simulation unit is configured to configure and run a business process simulator based on the simulation parameters and simulation requirement data, and obtain the target simulation data output by the business process simulator.
7. An electronic device, comprising: include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-5.
8. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-5.