Determination Method and Device Combining Process Approval Certainty Rules and Semantic Self-Learning
The integration of process approval certainty rules with semantic self-learning allows for dynamic adjustment of workflow definitions, addressing static limitations by predicting and recommending updated process steps, ensuring accurate and adaptive workflow execution.
Patent Information
- Application Number
- CN202011031120.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-27
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2040-09-27
AI Technical Summary
The process definition method of the existing workflow engine cannot meet the dynamic changes, resulting in the need to be reset when branch conditions, approval roles and process links change during process execution, and cannot adapt to the dynamic changes in the actual business status.
The process approval deterministic rules and semantic self-learning combined with determination methods are used to extract business process definition data, and the process definition definition is clustered and recommended using the K-Means clustering algorithm and the random forest model to form a process definition knowledge base, and map it into executable process instances through regular expressions.
It realizes that the process definition is dynamically adjusted based on the static process definition, accurately reflecting the current execution status of the approval process, supporting process customization, adapting to business changes, and improving the flexibility and accuracy of process management.
Smart Images

Figure HDA0002703708190000011 
Figure HDA0002703708190000012 
Figure HDA0002703708190000021
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of process management, and particularly relates to a method and device for combining a deterministic rule of process approval and semantic self-learning for determination. Background Art
[0002] In a management information system, a large number of operations involve process approval. The existing workflow engine completes business transfer and application by setting a deterministic process definition and generating an executable process instance. However, defining a deterministic rule through a workflow engine requires a large amount of business knowledge, and the process definition needs to be determined when the business is launched. For process execution, the existing method is to set a static process definition through a workflow engine, perform instantiation transformation according to the currently set process definition during the process execution, and transfer to different approvers according to different approval conditions, so as to complete business approval, that is, the process is preset. If there are changes in the branch conditions, approval roles, and process links during the execution of the current approval process, the current approval process reports an error and stops executing, and it is necessary to reset the process definition before continuing to execute, (as Figure 1 shown). This static process definition method obviously has the problem of incomplete coverage of the actual business state transfer, such as missing branch conditions or approval links during process definition; on the other hand, changes in the branch conditions, approval roles, and process links in the process definition all require resetting, that is, it cannot meet the dynamic change requirements. Summary of the Invention
[0003] In order to solve the problems existing in the prior art, the present invention provides a method and device for combining a deterministic rule of process approval and semantic self-learning for determination.
[0004] One technical solution of the present invention provides a method for combining a deterministic rule of process approval and semantic self-learning for determination, and the method includes the following steps:
[0005] Extract business process definition data to generate a process definition;
[0006] Cluster the characteristic attributes of the process definition;
[0007] Determine the business type of the current approval process and recommend possible process definitions;
[0008] Determine the process links in the current process definition and recommend possible process links.
[0009] In a further improved solution, the method further includes forming a process definition knowledge base for storing and retrieving process definitions.
[0010] In a further improved solution, the characteristic attributes of the process definition are clustered based on the K-Means clustering algorithm.
[0011] In a further improved solution, the method further includes mapping the finally determined process definition into a process instance that can be actually executed in a workflow engine through a regular expression.
[0012] In a further improved solution, the process definition consists of at least one or more process links; each process link consists of a series of approval conditions and approvers or approval roles to determine different approvers or approval roles according to different approval conditions; the process definition is expressed as ((business type), (business scenario), {(process link), {(approval condition), (approver or approval role)}, (next process link)}).
[0013] In a further improved solution, the steps for determining the business type of the current approval process and recommending possible process definitions are as follows:
[0014] Judge whether the current business type belongs to the business types given in the existing process definition knowledge base;
[0015] If it belongs to the business types given in the existing process definition knowledge base, select the process definition corresponding to the current business type;
[0016] If it belongs to a new business type, predict and recommend the business type through a random forest model, and select and edit to form a new process definition.
[0017] In a further improved solution, the steps for determining the process links in the current process definition and recommending possible process links are as follows:
[0018] Judge whether the process links in the current process definition match the process links in the process definition;
[0019] If it belongs to the process links in the process definition, select the current process link;
[0020] If it belongs to a new process link, predict and recommend the process link through a random forest model, and select and edit to form a new process link.
[0021] In a further improved solution, the construction process of the random forest model includes the following steps:
[0022] Suppose there is a set D containing N data samples. Randomly sample D with replacement N times to obtain a set D'. Then use D' to train a decision tree, and D' serves as the sample at the root node of this decision tree;
[0023] Assume that each sample has M features. When a certain internal node of the decision tree needs to be split, randomly select m features, where m ∈ M and m << M. Then, according to a certain metric, such as information gain or information gain ratio, etc., select one feature from the m features as the splitting attribute of this internal node;
[0024] During the construction process of the decision tree, each internal node has to be split according to step 2) until it can no longer be split and reaches the leaf node;
[0025] Repeat the above steps to construct a large number of decision trees and build a random forest model.
[0026] Another technical solution of the present invention provides a device for combining deterministic rules and semantic self-learning in process approval, and the device includes:
[0027] An extraction module configured to extract business process definition data and generate a process definition;
[0028] A clustering module configured to cluster the feature attributes of the process definition;
[0029] A knowledge base formation module configured to form a process definition knowledge base;
[0030] A process definition recommendation module configured to determine the business type of the current approval process and recommend possible process definitions;
[0031] A process step recommendation module configured to determine the process steps in the current process definition and recommend possible process steps;
[0032] A mapping module configured to map the finally determined process definition into a process instance that can be actually executed in the workflow engine through regular expressions.
[0033] Another technical solution of the present invention also provides a computer-readable storage medium, on which a computer program is stored, and the steps implemented when the program is executed by a processor for a device for combining deterministic rules and semantic self-learning in process approval.
[0034] A method and device for combining deterministic rules of process approval and semantic self-learning for determination. The method and device are based on historical process approval big data, learn and cluster the approval process through machine learning algorithms to form a deterministic process definition, and detect whether the execution of the current approval process in the actual process instance is consistent with the statically set process definition, recommend possible process definitions or process steps. On the basis of the deterministic process definition, machine learning is carried out using historical process approval information to obtain a new process definition, and a process definition rule library is formed. The process definition formed through big data analysis can be supplemented into the deterministic process to form a static process on the one hand, and on the other hand, it can judge whether there are changes in the execution of the current approval process during the actual operation process, detect the conflict points with the existing process instances, predict possible change situations, and recommend possible process definitions or process steps, so as to realize the dynamic adjustment of the process definition, accurately reflect the execution status of the current approval process, and finally realize the customization of the approval process, which is helpful for the data-driven process application of the management information system. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the drawings required for the embodiments. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0036] Figure 1 is the workflow diagram of business process approval disclosed in the prior art;
[0037] Figure 2 is the flowchart of a method for combining deterministic rules of process approval and semantic self-learning for determination provided by some embodiments of the present invention;
[0038] Figure 3 is the flowchart of clustering the characteristic attributes of the process definition by the improved K-Means clustering algorithm;
[0039] Figure 4 is the flowchart of selecting k samples from the dataset E as the initial clustering centers;
[0040] Figure 5 is the structural block diagram of a device for combining deterministic rules of process approval and semantic self-learning for determination provided by some embodiments of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0041] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
[0042] One embodiment of the present invention provides a combined determination method of process approval certainty rules and semantic self-learning, as Figure 2 shown, the method includes the following steps:
[0043] S1: Extract business process definition data and generate a process definition.
[0044] Extract business process definition data such as approval time, approval form, approver (approval role), and approval process name information from historical process approval data. Among them, the approval role refers to the same type of personnel and can be composed of a series of approvers. For example, the approval role of "project leader" can be composed of two approvers. There is semi-structured text in the approval form and approval process name information. By analyzing the semi-structured text, extract the keywords therein to provide a data basis for the clustering of the subsequent process definition.
[0045] Among them, the process definition can be represented as a relational graph with process links as nodes and approvers (approval roles) determined according to approval conditions as directed edges. The nodes are represented by process links, and the directed edges of different process links are determined by approval conditions for approvers or approval roles. A complete process definition can be represented as ((business type), (business scenario), {(process link), {(approval condition), (approver or approval role)}, (next process link)}). If the next process link is NULL, it means that the current process link is the final link. The approval conditions are further decomposed into numerical or character approval conditions. Among them, the numerical approval condition can be represented as: {(parameter), (condition), (value)}, and the supported conditions include: greater than >, greater than or equal to ≥, equal to =, not equal to ≠, less than <, less than or equal to ≤, sum. The character type can be represented as: {(parameter), (=), (character)}, {(parameter), (≠), (character)}.
[0046] S2: Cluster the characteristic attributes of the process definition based on the K-Means clustering algorithm.
[0047] Keyword extraction: Extract fields that contribute to the business types defined in the process from the approval form and approval process name information as feature attributes, and perform word segmentation to form keywords. The weights of different fields vary, and accurate clustering is achieved by setting weights. For example, the "reason" field in the approval form has a higher weight, while the "opinion" field has a lower weight. The keywords formed by extraction are used as the input of the K-Means clustering algorithm to complete the classification of business types.
[0048] Data preprocessing: When performing the K-Means clustering algorithm, to improve the clustering accuracy, it is also necessary to preprocess the input data, including missing value processing and data feature scaling, etc., to form standard normalized normal data.
[0049] K-Means clustering learning: Cluster the keywords extracted from the approval form and approval process name information as special attributes after data preprocessing.
[0050] Process link preprocessing: After clustering, during the process link statistics, preprocess the outliers and anomalies. For example, if the occurrence frequency of a certain process link in a process definition is much lower than that of other process links, it can be considered an outlier; if the approval time of a certain process link is abnormal, or earlier than the approval time defined by the normal process link, it can be considered an anomaly.
[0051] Process link combination: On the basis of completing the classification of business types, the relationships of different process links are statistically analyzed to form different criteria for determining the approver (approval role) according to different approval conditions, and combined to form a complete process definition, that is, the set of process links under the current approval process definition is statistically analyzed according to the approval process name information, approver, etc., and the execution order of the process links of the current approval process definition is determined according to the approval time.
[0052] S3: Form a process definition knowledge base.
[0053] Through the representation of the process definition, extract the corresponding field information from the original data, and store it in the knowledge base as a process definition after being expressed in standard representation, thereby forming a process definition knowledge base. This provides a basis for subsequent regular expression parsing. Among them, the description of the process definition representation is stored in XML or JSON format.
[0054] The process definition knowledge base is used for the storage and retrieval query of process definitions to facilitate subsequent rapid matching.
[0055] S4: Determine the business type of the current approval process and recommend possible process definitions.
[0056] Among them, determining the business type of the current approval process and recommending possible process definitions specifically include the following steps:
[0057] Determine whether the current business type belongs to the business types given in the existing process definition knowledge base; during the determination process, extract the keywords that contribute to the business type in the current approval process, construct a Word2Vec model, and determine the degree of compliance between the current business type and the business types given in the existing process definition knowledge base;
[0058] If it belongs to the business types given in the existing process definition knowledge base, select the process definition corresponding to the current business type;
[0059] If it belongs to a new business type (i.e., not belonging to the business types given in the existing process definition knowledge base), use a random forest model to predict and recommend the business type, and select the edited one to form a new process definition.
[0060] Use the random forest algorithm to transform the process definition conflict detection prediction into a classification problem to predict whether the process definition is consistent with the existing process definition. Considering the real-time issue of model calculation, set the algorithm execution to be periodically executed to update the training set and complete parameter training.
[0061] To prevent the prediction model from being difficult to converge quickly and obtain the prediction result due to the too large value of the input variable, it is necessary to perform feature scaling on the data to standardize the range of independent variables or data features. According to the characteristics of the process approval data itself, choose to use Min-Max for normalization so that the normalized data falls within the interval of [0,1]. To evaluate the performance of the model in this task and improve the prediction accuracy of the model, transform the multi-classification of the problem domain into multiple binary classification tasks.
[0062] When performing classification, use a random forest model to calculate. The construction process of the random forest model is roughly divided into 4 steps, as follows:
[0063] 1) Suppose there is a set D containing N data samples. Randomly sample D with replacement N times to obtain a set D'. Then use D' to train a decision tree, and D' serves as the sample at the root node of this decision tree;
[0064] 2) Suppose each sample has M features. When a certain internal node of the decision tree needs to be split, randomly select m features, and m ∈ M, m << M. Then, according to a certain index, such as information gain or information gain ratio, etc., select one feature from the m features as the splitting attribute of this internal node;
[0065] 3) During the construction process of the decision tree, each internal node should be split according to step 2) until it no longer splits and reaches the leaf node;
[0066] 4) Repeat the above steps to construct a large number of decision trees. Finally, establish a random forest.
[0067] S5: Determine the process steps in the current process definition and recommend possible process steps. After obtaining an existing or newly generated process definition through matching, it is necessary to further determine the matching degree of the process steps in the process definition.
[0068] Among them, determining the process steps in the current process definition and recommending possible process steps includes the following steps:
[0069] Determine whether the process steps in the current process definition match the process steps in the process definition;
[0070] If it belongs to the process steps in the process definition, select the current process step;
[0071] If it belongs to new process steps, use the random forest model to predict and recommend process steps, and select the edited ones to form new process steps.
[0072] Similarly, based on the random forest model, detect whether there are conflicts in the current process step and detect the conflict situation. If there are conflicts, recommend possible candidates for the next process step for the user to select. At the same time, take the current process step as a new process step and update it to the existing process definition. When the update degree of the process step exceeds the set threshold (50%), select the edited one to form a new process definition.
[0073] S6: Map the finally determined process definition to a process instance that can be actually executed in the workflow engine through regular expressions.
[0074] The process definition is an abstract definition of the current approval process. It needs to be converted into an actually executable process instance through mapping and matching, and drive the change of the actual business process state through the workflow engine.
[0075] Through process definition, approval conditions and approvers are identified. The process definition of this application is represented as ((business type), (business scenario), {(process step), {(approval condition), (approver or approval role)}, (next process step)}). For a complete process definition, it can be seen that the process definition includes a business type, a business scenario, and a series of process steps. Each process step includes a process step name, a series of approval condition sets, and a next process step name. The approval conditions are further decomposed into numerical or character-based approval conditions. Among them, the numerical approval condition can be expressed as: {(parameter), (condition), (value)}, and the supported conditions include: greater than >, greater than or equal to ≥, equal to =, not equal to ≠, less than <, less than or equal to ≤, sum. The character-based one can be expressed as: {(parameter), (=), (character)}, {(parameter), (not equal to ≠), (character)}. This application defines that the parentheses pair "()" represents a unique expression, that is, it is only allowed to appear once; the curly braces "{}" represent a multiple expression, that is, it can include 0 to multiple expressions. The operator is used for condition judgment, including greater than >, greater than or equal to ≥, equal to =, not equal to ≠, less than <, less than or equal to ≤, sum. By using regular expression matching, a mapping rule matching the actual workflow engine is established, and the current process definition is identified, parsed, and converted into an actual executable process according to the regular expression.
[0076] Generally, an actual executable process is formed by combining atomic processes such as parallel, serial, convergence, and nesting during operation. For a parallel process, check whether two approval steps are irrelevant to each other; for a serial process, check the sequence of two approval steps; for a convergence process, check the convergence step of two parallel processes; for a nested process, determine the source step and the destination step. Through various combinations of atomic processes, a final executable workflow is formed. This workflow is combined with the actual business and relies on the workflow engine. According to the approval conditions of the business, it is assigned to different approvers, and the status transfer is gradually completed until the business is in the completed state.
[0077] For example, in the current business activity, a device with a purchase cost of 1.2 million yuan will be reimbursed. After learning the process definition and process links, it is matched to a process definition instance ((Purchase Reimbursement), (Large Instrument and Equipment Purchase Reimbursement Account), {(Reimbursement Person Submits Application), {(Equipment Cost>0.01 yuan), (Project Leader Approval)}, (Project Leader Approval)}, {(Project Leader), {(Equipment Cost≥50,000 yuan), (Equipment Department Approval)}, (Equipment Department Approval)}, {(Equipment Cost≥100,000 yuan), (Division (Approval by the leader in charge)}, (Approval by the deputy leader)}, {(Approval by the deputy leader), {(Equipment cost ≥ RMB 1 million), (Approval by the unit leader)}, (Approval by the unit leader)}, {(Approval by the unit leader), (Financial review and reimbursement)}, {(Financial review and reimbursement)}), after regular expression parsing and matching, the following executable workflow is formed: 1) The person making the reimbursement submits the application -> 2) Approval by the project leader -> 3) Approval by the equipment department -> 4) Approval by the deputy leader -> 5) Approval by the unit leader -> 6) Financial review and reimbursement.
[0078] The present invention provides a method for combining deterministic rules and semantic self-learning for process approval. Based on historical process approval big data, the approval process is clustered through learning by machine learning algorithms to form a deterministic process definition. In the actual process instance, it is detected whether the current approval process execution is consistent with the statically set process definition, and possible process definitions or process links are recommended. On the basis of the deterministic process definition, the historical process approval information is used for machine learning to obtain a new process definition to form a process definition rule library. On the one hand, the process definition formed by big data analysis can be supplemented into the deterministic process to form a static process. On the other hand, in the actual operation process, it is determined whether there are changes in the current approval process execution, detects conflict points with existing process instances, predicts possible changes, and recommends possible process definitions or process links, thereby realizing dynamic adjustment of the process definition, accurately reflecting the execution status of the current approval process, and finally realizing the customization of the approval process, which is helpful for the data-driven process application of the management information system.
[0079] like Figure 3 As shown, in some preferred embodiments, in order to further improve the accuracy of clustering, an improved K-Means clustering algorithm is used to cluster the characteristic attributes of the process definition, which specifically includes the following steps:
[0080] S21: Use the Word2Vec algorithm to obtain the word vectors of keywords that contribute to the business type of the process extracted from the approval form and the approval link name information to form a data set E;
[0081] S22: Select k samples from the data set E as the initial cluster centers {u1,u2,...,u k};
[0082] like Figure 4 As shown, in some preferred embodiments, k samples are selected from the data set E as the initial clustering centers {u1,u2,...,u k} includes the following steps:
[0083] S221: Calculate the Pearson correlation coefficient between each sample in the data set E, and form a set P of samples whose Pearson correlation coefficient is greater than the threshold. a , the remaining samples form the set P b ;
[0084] The Pearson correlation coefficient threshold can be set manually.
[0085] S222: From the set P a and the set P b Find the sample x with the highest density among a1 and sample x b1 ;
[0086] S223: From the set P a Medium distance sample x a1 Start traversing from the nearest sample and look for the sample x a1 Forming set G a1 samples, until the set G a1 RSD of all samples in a > threshold RSD0, stop searching; from set P b Medium distance sample x b1 Start traversing from the nearest sample and look for the sample x b1 Forming set G b1 samples until the set G b1 RSD of all samples in b >When the threshold RSD0, stop searching;
[0087] Where A represents the set G a1 The number of samples in d aA Represents sample x a1 The Euclidean distance from the Ath sample;
[0088] Where B represents the set G b1 The number of samples in d aB Represents sample x b1 The Euclidean distance from the Bth sample;
[0089] S224: Perform steps S222 and S223 on the remaining samples in set P1 and set P2 respectively, and repeat in sequence until k a sets and kb a set, where k a ={G a1 , G a2 ,..., G ka}, k b ={G b1,Gb2 ,..., G kb}
[0090] S225: Calculate the centroid of each set in the k a sets and the k b sets respectively where y is a or b, |c iy | is the number of samples in each set of the k a sets or the k b sets;
[0091] S226: Calculate the Euclidean distance between each centroid, and merge two sets with the Euclidean distance less than the distance threshold d min to finally form k sample sets;
[0092] S227: Calculate the centroid of each sample in the k sample sets, that is, obtain the initial clustering centers {u1, u2,..., u k} of the k samples;
[0093] S23: For each sample x j in the data set E, calculate its Euclidean distance to the k clustering centers {u1, u2,..., u k}, and assign it to the cluster corresponding to the clustering center with the smallest distance;
[0094] S24: For each cluster c j , recalculate the clustering center |c j | is the number of samples in this cluster;
[0095] S25: Until all clustering centers no longer change, output the cluster partition C = {C1, C2,... C k}.
[0096] When performing K-Means clustering in this application, the k initial clustering centers are not randomly selected, but are selected according to the characteristics of the data, thereby significantly improving the accuracy and stability of K-Means clustering, and overcoming the problem that traditional K-Means clustering cannot obtain the global optimal solution.
[0097] Another embodiment of the present invention provides a device for combining process approval certainty rules and semantic self-learning determination, as Figure 5 shown, the device includes:
[0098] An extraction module 10, which is configured to extract business process definition data and generate a process definition.
[0099] Extract business process definition data such as approval time, approval form, approver (approval role), and approval process name information from historical process approval data. Among them, the approval role refers to the same type of personnel and can be composed of a series of approvers. For example, the approval role of "project leader" can be composed of two approvers. There is semi-structured text in the approval form and approval process name information. By analyzing the semi-structured text, extract the keywords in it to provide a data basis for the clustering of subsequent process definitions.
[0100] Among them, the process definition can be represented as a relational graph with process links as nodes and approvers (approval roles) determined according to approval conditions as directed edges. The nodes are represented by process links, and the directed edges of different process links are determined by approval conditions for approvers or approval roles. A complete process definition can be represented as ((business type), (business scenario), {(process link), {(approval condition), (approver or approval role)}, (next process link)}). If the next process link is NULL, it means that the current process link is the final link. The approval conditions are further decomposed into numerical or character approval conditions. Among them, the numerical approval condition can be represented as: {(parameter), (condition), (value)}, and the supported conditions include: greater than >, greater than or equal to ≥, equal to =, not equal to ≠, less than <, less than or equal to ≤, sum. The character type can be represented as: {(parameter), (=), (character)}, {(parameter), (≠), (character)}.
[0101] A clustering module 20, which is configured to cluster the characteristic attributes of the process definition based on the K-Means clustering algorithm.
[0102] Keyword extraction: Extract the fields that contribute to the business type of the process definition from the approval form and approval process name information as characteristic attributes, and perform word segmentation to form keywords. Among them, the weights of different fields are different, and accurate clustering is achieved by setting weights. For example, the reason field in the approval form has a higher weight, and the opinion field has a lower weight. Use the extracted keywords as the input of the K-Means clustering algorithm to complete the classification of business types.
[0103] Data preprocessing: When performing the K-Means clustering algorithm, in order to improve the clustering accuracy, it is also necessary to preprocess the input data, including missing value processing and data feature scaling, etc., to form standard normalized normal data.
[0104] K-Means clustering learning: Cluster the keywords extracted from the preprocessed approval forms and approval process name information as feature attributes.
[0105] Process step preprocessing: After clustering, during the process of statistical analysis of process steps, preprocess outliers and anomalies. For example, if the frequency of a certain process step in a process definition is much lower than that of other process steps, it can be considered an outlier; if the approval time of a certain process step is abnormal, or earlier than the approval time defined for normal process steps, it can be considered an anomaly.
[0106] Process step combination: On the basis of completing business type classification, the relationships between different process steps are statistically analyzed to form different rules for determining approvers (approval roles) based on different approval conditions, and combined to form a complete process definition. That is, a set of process steps under the current approval process definition is statistically obtained according to information such as approval process name information and approvers, and the execution order of the process steps of the current approval process definition is determined according to the approval time.
[0107] Knowledge base formation module 30, which is configured to form a process definition knowledge base.
[0108] By representing the process definition, corresponding field information is extracted from the original data, and after being expressed in a standard representation, the process definition is stored in the knowledge base to form a process definition knowledge base, providing a basis for subsequent regular expression parsing. Among them, the description of the process definition representation is stored in XML or JSON format.
[0109] The process definition knowledge base is used for the storage and retrieval query of process definitions to facilitate subsequent rapid matching.
[0110] Process definition recommendation module 40, which is configured to determine the business type of the current approval process and recommend possible process definitions.
[0111] Among them, determining the business type of the current approval process and recommending possible process definitions specifically includes the following steps:
[0112] Judge whether the current business type belongs to the business types given by the existing process definition knowledge base; during the judgment process, extract the keywords contributing to the business type in the current approval process, construct a Word2Vec model, and judge the conformity degree between the current business type and the business types given by the existing process definition knowledge base;
[0113] If it belongs to the business types given by the existing process definition knowledge base, select the process definition corresponding to the current business type;
[0114] If it belongs to a new business type (i.e., not belonging to the existing process definition knowledge base), the random forest model is used to predict and recommend the business type, and after selection and editing, a new process definition is formed.
[0115] The random forest algorithm is used to transform the process definition conflict detection prediction into a classification problem to predict whether the process definition is consistent with the existing process definition. Considering the real-time issue of model calculation, the algorithm execution is set to be executed periodically to update the training set and complete parameter training.
[0116] To prevent the prediction model from being difficult to converge quickly and obtain the prediction result due to the too large numerical value of the input variable, it is necessary to perform feature scaling on the data to standardize the range of independent variables or data features. According to the characteristics of the process approval data itself, Min-Max normalization is selected to make the normalized data fall into the interval of [0,1]. To evaluate the performance of the model in this task and improve the prediction accuracy of the model, the multi-classification of the problem domain is transformed into multiple binary classification tasks.
[0117] When performing classification, the random forest model is used for calculation. The construction process of the random forest model is roughly divided into 4 steps, which are as follows:
[0118] 1) Suppose there is a set D containing N data samples. Randomly sample D with replacement N times to obtain a set D'. Then use D' to train a decision tree, and D' is used as the sample at the root node of this decision tree;
[0119] 2) Suppose each sample has M features. When a certain internal node of the decision tree needs to be split, randomly select m features, and m ∈ M, m << M. Then, according to a certain index, such as information gain or information gain ratio, etc., select one feature from the m features as the splitting attribute of this internal node;
[0120] 3) Each internal node in the decision tree construction process should be split according to step 2) until it no longer splits and reaches the leaf node;
[0121] 4) Repeat the above steps to construct a large number of decision trees. Finally, establish a random forest.
[0122] The process step recommendation module 50 is configured to determine the process steps in the current process definition and recommend possible process steps. After obtaining a matching existing or newly generated new process definition, it is also necessary to further judge the matching degree of the process steps under the process definition.
[0123] Among them, determining the process steps in the current process definition and recommending possible process steps includes the following steps:
[0124] Determine whether the process step in the current process definition matches the process step in the process definition;
[0125] If it belongs to the process step in the process definition, select the current process step;
[0126] If it belongs to a new process step, use the random forest model to predict and recommend process steps, and select the edited one to form a new process step.
[0127] Similarly, based on the random forest model, detect whether there are conflicts in the current process step and detect the conflict situation. If there are conflicts, recommend possible candidates for the next process step for the user to select. At the same time, use the current process step as the new process step and update it to the existing process definition. When the update degree of the process step exceeds the set threshold (50%), then select the edited one to form a new process definition.
[0128] Mapping module 60, which is configured to map the finally determined process definition into a process instance that can be actually executed in the workflow engine through regular expressions.
[0129] The process definition is an abstract definition of the current approval process. It needs to be mapped and matched and then converted into an actually executable process instance, and the workflow engine is used to drive the change of the actual business process state.
[0130] Through the process definition, approval conditions and approvers are identified. The process definition of this application is expressed as ((business type), (business scenario), {(process step), {(approval condition), (approver or approval role)}, (next process step)}). For a complete process definition, it can be seen that the process definition includes a business type, a business scenario, and a series of process steps. Each process step includes a process step name, a series of approval condition sets, and a next process step name. The approval conditions are further decomposed into numerical or character approval conditions. Among them, the numerical approval condition can be expressed as: {(parameter), (condition), (value)}, and the supported conditions include: greater than >, greater than or equal to ≥, equal to =, not equal to ≠, less than <, less than or equal to ≤, sum. The character type can be expressed as: {(parameter), (=), (character)}, {(parameter), (not equal to ≠), (character)}. This application defines the parentheses pair "()" as a unique expression, that is, it is only allowed to appear once; the curly braces "{}" are expressed as multiple expressions, that is, it can include 0 to multiple expressions. The operator is used for condition judgment, including greater than >, greater than or equal to ≥, equal to =, not equal to ≠, less than <, less than or equal to ≤, sum. Using regular expression matching, establish a mapping rule that matches the actual workflow engine, and identify, parse and convert the current process definition into an actually executable process according to the regular expression.
[0131] Generally, an actual executable process is formed by combining atomic processes such as parallel, serial, convergent, and nested ones during its operation. For parallel processes, check whether two approval links are unrelated to each other; for serial processes, determine the sequence of two approval links; for convergent processes, determine by checking the convergence links of two parallel processes; for nested processes, determine the source link and the destination link. Through various combinations of atomic processes, the final executable workflow is formed. This workflow is combined with the actual business and relies on the workflow engine. According to the approval conditions of the business, it is assigned to different approvers, and the status transfer is gradually completed until the business reaches the completed state.
[0132] In the current business activity, for example, when reimbursing a device with a procurement cost of 1.2 million yuan, after learning the process definition and process links, a process definition instance is matched: ((Procurement reimbursement), (Reimbursement and recording of large-scale instrument equipment procurement), {(The reimburser submits an application)}, {(The equipment cost > 0.01 yuan), (The project leader approves)}, (The project leader approves)}, {(The project leader), {(The equipment cost ≥ 50,000 yuan), (The equipment department approves)}, (The equipment department approves)}, {(The equipment cost ≥ 100,000 yuan), (The deputy leader in charge approves)}, (The deputy leader in charge approves)}, {(The deputy leader in charge approves), {(The equipment cost ≥ 1 million yuan), (The unit leader approves)}, (The unit leader approves)}, {(The unit leader approves), (The financial department reviews and reimburses)}, (The financial department reviews and reimburses)}. After parsing and matching through regular expressions, the following executable workflow is formed: 1) The reimburser submits an application -> 2) The project leader approves -> 3) The equipment department approves -> 4) The deputy leader in charge approves -> 5) The unit leader approves -> 6) The financial department reviews and reimburses.
[0133] A device for combining the determination rules of process approval and semantic self-learning provided by the present invention, based on historical process approval big data, learns and clusters the approval process through machine learning algorithms to form a deterministic process definition, and detects whether the execution of the current approval process in the actual process instance is consistent with the statically set process definition, recommends possible process definitions or process links. On the basis of the deterministic process definition, new process definitions are obtained through machine learning using historical process approval information to form a process definition rule library. The process definition formed through big data analysis can, on the one hand, be supplemented into the deterministic process to form a static process, and on the other hand, judge whether there are changes in the execution of the current approval process during the actual operation, detect the conflict points with the existing process instances, predict possible change situations, and recommend possible process definitions or process links, so as to realize the dynamic adjustment of the process definition, accurately reflect the execution status of the current approval process, and finally realize the customization of the approval process, which is helpful for the data-driven process application of the management information system.
[0134] Another embodiment of the present invention provides another computer-readable storage medium. The computer-readable storage medium may be the computer-readable storage medium included in the memory in the above embodiment; or it may exist alone and be a computer-readable storage medium not assembled into the terminal. The computer-readable storage medium stores one or more programs, and the one or more programs are used by one or more processors to execute the methods provided in the above embodiments.
[0135] Each embodiment in this specification is described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other. Each embodiment focuses on the differences from other embodiments.
[0136] Those of ordinary skill in the art can understand that all or part of the processes of implementing the methods in the above embodiments can be completed by instructing relevant hardware through a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it may include the processes of the embodiments of the above methods. Among them, the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM), etc.
[0137] As mentioned above, the above are only the specific embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed by the present invention should be covered by the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.
Claims
1. A method for combining deterministic rules of process approval and semantic self - learning for judgment, characterized in that, The method includes the following steps: Extract business process definition data and generate a process definition; Cluster the characteristic attributes of the process definition; Form a process definition knowledge base for storing and retrieving process definitions; Determine the business type of the current approval process and recommend possible process definitions, including the following steps: Judge whether the current business type belongs to the business types given by the existing process definition knowledge base; If it belongs to the business types given by the existing process definition knowledge base, select the process definition corresponding to the current business type; If it belongs to a new business type, predict and recommend the business type through a random forest model, and select and edit to form a new process definition; Determine the process links in the current process definition and recommend possible process links, including the following steps: Judge whether the process links in the current process definition match the process links in the process definition; If it belongs to the process links in the process definition, select the current process link; If it belongs to a new process link, predict and recommend the process link through a random forest model, and select and edit to form a new process link; Map the finally determined process definition to a process instance that can be actually executed in the workflow engine through a regular expression.
2. The method for combining the process approval certainty rule and semantic self-learning for determination according to claim 1, wherein Cluster the characteristic attributes of the process definition based on the K-Means clustering algorithm.
3. The process approval certainty rule and semantic self-learning combined determination method according to claim 1, wherein The process definition consists of at least one or more process links; each process link consists of a series of approval conditions and approvers or approval roles, so as to determine different approvers or approval roles according to different approval conditions; the process definition is expressed as ((business type), (business scenario), {(process link), {(approval condition), (approver or approval role)}, (next process link)}).
4. The method for combining the process approval certainty rule and semantic self-learning for determination according to claim 1, wherein The construction process of the random forest model includes the following steps: Suppose there is a set D containing N data samples. Randomly sample D with replacement N times to obtain a set D'. Then use D' to train a decision tree, and D' serves as the sample at the root node of the decision tree; Suppose each sample has M features. When a certain internal node of the decision tree needs to be split, randomly select m features, and m ∈ M, m << M; then according to a certain index, such as information gain or information gain ratio, etc., select one feature from the m features as the splitting attribute of the internal node; During the construction process of the decision tree, each internal node has to be split according to step 2) until it no longer splits and reaches the leaf node; Repeat the above steps to construct a large number of decision trees and construct a random forest model.
5. A decision-making device combining process approval deterministic rules and semantic self-learning, characterized in that The device includes: An extraction module configured to extract business process definition data and generate a process definition; A clustering module configured to cluster the characteristic attributes of the process definition; A knowledge base formation module configured to form a process definition knowledge base; A process definition recommendation module configured to determine the business type of the current approval process and recommend possible process definitions; including the following steps: Judge whether the current business type belongs to the business types given by the existing process definition knowledge base; If it belongs to the business types given in the existing process definition knowledge base, select the process definition corresponding to the current business type; If it belongs to a new business type, use a random forest model to predict and recommend business types, and select and edit to form a new process definition; A process step recommendation module, which is configured to determine the process steps in the current process definition and recommend possible process steps; includes the following steps: Determine whether the process steps in the current process definition match the process steps in the process definition; If it belongs to the process steps in the process definition, select the current process step; If it belongs to a new process step, use a random forest model to predict and recommend process steps, and select and edit to form a new process step; A mapping module, which is configured to map the finally determined process definition into a process instance that can be actually executed in the workflow engine through regular expressions.
6. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by a processor, it implements the steps of the method described in any one of claims 1-5.
Citation Information
Patent Citations
Workflow engine supporting multimode driving
CN104091222A
Method for dynamically designating participants of subsequent examination and approval links and workflow engine
CN108596554A