An intelligent decision-making system combining algorithms and business rules

By introducing an intelligent decision-making system that combines algorithms and business rules on the online ride-hailing platform, the problems of long development cycle, high cost and low resource reuse in the existing technology are solved, and more efficient development and faster market response are achieved.

CN119149037BActive Publication Date: 2025-02-28BEIJING YUNXING ONLINE SOFTWARE DEV CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411666657.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-02-28
Estimated Expiration
2044-11-21

AI Technical Summary

Technical Problem

The existing online ride-hailing platforms rely on program development in terms of business rules implementation and optimization, resulting in long development cycles, high costs, and difficulty in adapting to rapidly changing market demands, low resource reuse rate and many repetitive tasks.

Method used

It provides an intelligent decision-making system that combines algorithms and business rules, including feature management modules, interface management modules, rule management modules, process management modules and batch task testing modules. Through a unified platform, it realizes the visual arrangement of intelligent decision-making rules and complex business decision-making processes.

Benefits of technology

Reliance on program developers has been reduced, development efficiency has been improved, repetitive work has been reduced, and overall efficiency has been improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure FT_1
    Figure FT_1
  • Figure FT_2
    Figure FT_2
  • Figure FT_3
    Figure FT_3
Patent Text Reader

Abstract

The present invention relates to an intelligent decision-making system combining algorithms and business rules, which is applied to the technical field of online car-hailing platforms, including: managing diversified data assets and algorithm models through a unified platform, thereby avoiding the problem of difficulty in tracing historical legacy problems caused by personnel mobility due to the lack of a unified tool in traditional methods; splitting policy tasks into multiple functional parts, each functional part is responsible for editing corresponding content, and the visual arrangement of intelligent decision-making rules and complex business decision-making processes is realized through the cooperation of various functional components, so that non-technical personnel can also participate in the rule formulation and optimization process, greatly improving development efficiency and reducing dependence on program developers; generating test forms through automatic mapping of rule data, and instantly verifying the effects of business rules, which can quickly respond to changes in market demand and improve overall efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of online car-hailing platforms, and in particular to an intelligent decision-making system combining algorithms and business rules. Background Art

[0002] With the rapid development of the Internet and mobile communication technologies, the online ride-hailing industry has grown rapidly. Online ride-hailing platforms provide convenient and efficient travel services by integrating passenger demand and driver resources. However, with the expansion of business scale and the diversification of business scenarios, the business logic of the online ride-hailing industry has become increasingly complex. In order to improve operational efficiency and user experience, major platforms have introduced algorithm models and achieved intelligent decision-making through data-driven.

[0003] In the existing technology, the data definition and business rules of the algorithm model input are different in different business scenarios, which leads to the need for customized packaging for each application scenario. This customized development is not only time-consuming and labor-intensive, but also due to the lack of unified management tools, the existing business rule management tends to be procedural and difficult to adapt to the rapidly changing market demands. In addition, due to frequent personnel turnover, historical problems are difficult to trace, which further increases the difficulty of system maintenance and optimization.

[0004] Currently, the implementation and optimization of business rules heavily rely on program development. Each personalized demand needs to go through a series of processes from demand analysis, sorting, review, to scheduling, development, testing, and online launch. This traditional software development model leads to a long service production cycle, and the business rules are changeable and flexible in combination, which makes the implementation of the program involve a lot of repetitive work, resulting in serious and ineffective occupation of technical resources and reduced overall efficiency.

[0005] At present, most online ride-hailing platforms adopt customized development methods to meet the needs of different business scenarios. Although this method can provide solutions to specific problems, its disadvantages are long development cycles, high costs, and difficulty in adapting to rapidly changing market environments. Some platforms achieve partial automation by writing scripts. However, this method still requires a lot of manpower for script maintenance and updates, and also lacks unified management tools, which increases the overall system complexity. Some platforms try to modularize system functions so that these modules can be reused in different scenarios. However, due to the lack of unified interface standards between modules and inconsistent data formats, this method has limited effect in practical applications. Summary of the invention

[0006] In view of this, the purpose of the present invention is to provide an intelligent decision-making system that combines algorithms and business rules, so as to solve the problems of existing methods having high dependence on program developers, difficulty in tracing historical problems, long implementation cycle of business rules, low resource reuse rate and high repetitive work during business rule development.

[0007] According to a first aspect of an embodiment of the present invention, there is provided an intelligent decision-making system combining an algorithm and a business rule, the system comprising:

[0008] Feature management module: used to generate data features based on specified business fields, or to generate model features based on the tags corresponding to the platform's built-in model services;

[0009] Interface management module: used to obtain the characteristic variables of the characteristic management module and configure the variable values ​​of the corresponding characteristic variables; also used to obtain the interface variables of the output of other interfaces and configure the variable values ​​of the corresponding interface variables; also used to automatically assign variable values ​​according to the custom variables by custom configuration of custom variables;

[0010] It is also used to output feature variables, interface variables, and custom variables containing variable values ​​as interface features;

[0011] Rule management module: used to obtain data features, model features and interface features of the feature management module and the interface management module, and classify the data features, model features and interface features into string type features, numerical type features and model type features according to data types;

[0012] It is also used to perform specific conditional determination on the string type feature according to the string logic operator to generate a string type feature condition; it is also used to perform specific conditional determination on the numerical type feature according to the numerical logic operator to generate a numerical type feature condition; it is also used to perform conditional determination on the model type feature according to the model logic operator to generate a model type feature condition;

[0013] It is also used to combine the selected string type feature conditions, numerical type feature conditions or model type feature conditions, and to obtain a rule expression by setting the output type and output value, and to place different rule expressions in a list to obtain a rule list;

[0014] Process management module: used to select one or more rule expressions in the rule list, and connect multiple rule expressions to execute in a specific order, and configure the end condition to obtain the policy task; put different policy tasks in the list to obtain the task list;

[0015] Batch task testing module: used to test the policy tasks in the task list separately by uploading data sets in a specified format, issue policy tasks that are successfully executed, and delete or reconfigure policy tasks that fail to execute.

[0016] Preferably,

[0017] The attributes of the data feature include: data feature ID and name, feature type, business field of the big data warehouse associated with the data feature, name of the associated business field, value type of the associated business field, and data feature label;

[0018] The attributes of the model feature include: model feature ID and name, feature type, model service, mapping tag and model feature tag;

[0019] The data feature tag or model feature tag is used to query data features or model features;

[0020] The feature management module is also used to freely edit all attribute fields of data features or model features that are not referenced by the rule expression, freely edit the data feature ID, name and data feature label of the data features referenced by any rule expression, and freely edit the model feature ID, name and model feature label of the model features referenced by any rule expression;

[0021] The feature management module is also used to delete online the data features or model features that are not referenced by the regular expression;

[0022] The feature management module is also used to query any data feature or model feature, obtain its attribute fields and all the rule expressions being referenced.

[0023] Preferably,

[0024] The variables acquired by the interface management module include: variable name, value type, variable value type, variable value, example value and variable description;

[0025] The variable value types include feature variables, interface variables and custom variables;

[0026] The example value is used as the default variable value when the interface management module performs interface debugging;

[0027] When the interface management module debugs the interface, it returns the debugging parameters, and judges whether the required items of the variables have been filled, whether the same interface exists, and whether the request address is available according to the debugging parameters; if any required item is not filled, the same interface exists, or the request address is unavailable, the interface debugging fails;

[0028] The interface management module is also used to edit and modify the interface that is not referenced by any of the regular expressions;

[0029] The interface management module is also used to delete the interface that is not referenced by any of the regular expressions.

[0030] Preferably,

[0031] The rule expression includes a rule name, a rule label and a rule description;

[0032] The rule management module also includes a rule configuration panel, which is used to configure and edit the rule expression;

[0033] The rule configuration module is used to generate a string type feature condition by selecting a string type feature and performing a specific condition judgment on the string type feature according to the string logic operation words; the string logic operation words include: equal to, not equal to, contain, not contain, match regular expression, do not match regular expression, start with, end with, is empty, and is not empty;

[0034] The rule configuration panel is used to generate a numerical type feature condition by selecting a numerical type feature and performing a specific condition judgment on the numerical type feature according to the numerical logic operator; the numerical logic operator includes: equal to, not equal to, greater than, less than, greater than or equal to, less than or equal to, empty, and not empty; when the numerical type feature is selected in the rule configuration panel, it supports operating the referenced numerical type feature through an operation expression;

[0035] The rule configuration section is used to generate a model type feature condition by selecting a model type feature and performing conditional judgment on the model type feature according to the model logic operation words; the model logic operation words include: hit, miss, at least hit, and most hit; when selecting at least hit and most hit, the number of hits needs to be configured, and the default number of hits is 1;

[0036] The rule configuration module is also used to combine one or more string type feature conditions, numerical type feature conditions and model type feature conditions through conjunctions, and set the output type and output value to obtain a rule expression, wherein the conjunctions include: or, and;

[0037] The rule management module also includes a rule verification module, which is used to verify the generated rule expression;

[0038] The situations where the rule expression verification result fails include: the operation expression is wrong, any characteristic condition structure in the rule expression is missing, the rule expression output is not configured, and the rule expression output is abnormal; the rule expression that passes the verification result is saved and placed in the rule list.

[0039] Preferably,

[0040] The rule management module is also used to query the target rule expression through any one or more of the rule expression name, status, rule tag and rule creation date;

[0041] The states of the rule expressions include enabled and disabled. A rule expression that has passed verification and has been saved is disabled by default. A rule expression that is being referenced by any policy task is not allowed to be changed to disabled.

[0042] The rule management module is also used to edit the rule expression in the disabled state. The edited new rule expression needs to be verified by the rule verification module before it can be saved and added to the rule list;

[0043] The rule management module is also used to delete the rule expressions that are not referenced by any policy tasks.

[0044] Preferably,

[0045] The policy task includes basic information and interface information, wherein the basic information includes: policy ID and name, policy tag, policy description, policy status, policy creator and policy creation time;

[0046] The policy status includes published and unpublished; for a policy task in the published state, the process management module only allows viewing the basic information and interface information of the policy task, and does not allow editing and modification;

[0047] The interface information includes the interface addresses of all rule expressions referenced by the policy task;

[0048] The process management module is used to edit, modify and delete unpublished policy tasks.

[0049] Preferably,

[0050] The strategy tasks all include a start node, a rule node and an end node;

[0051] The start node is the system default, and the rule node includes one or more rule expressions; the process starts with the start node and ends with the end node. The end node includes one or more. The rule node is an intermediate step in the process. The start node is connected to a rule node, and the rule node can be connected to multiple rule nodes at the same time. A rule node is connected to one or more end nodes;

[0052] When both the satisfied and unsatisfied branches in the rule expression corresponding to any rule node are configured with output values, the rule node allows initiating two connections to connect different post-rule nodes or end nodes. Otherwise, the rule node only supports initiating one connection.

[0053] Preferably,

[0054] The batch task testing module is used to test the successfully configured and saved policy tasks;

[0055] When the batch task testing module performs batch testing on the policy task by acquiring a data set in a specified format, the data format in the uploaded data set is verified to see whether it contains all the data source fields required by the rule expression included in the policy task. If the verification passes, the test is performed;

[0056] If the test result fails, the batch task test module displays which characteristic condition in which rule expression corresponds to the data execution failure;

[0057] The batch task testing module is also used to terminate the process of the policy task being tested and delete it from the execution queue, delete the saved result data, and delete the task record;

[0058] The batch task testing module is also used to delete the policy tasks waiting for execution test from the waiting queue and delete the task records;

[0059] The batch task test module is also used to delete the saved result data and task records for the policy tasks that failed the test;

[0060] The batch task testing module is also used to delete the saved result data and task records for tasks that have been successfully tested.

[0061] The technical solution provided by the embodiments of the present invention may have the following beneficial effects:

[0062] This application manages diversified data assets and algorithm models through a unified platform, thereby avoiding the problem of difficult-to-trace historical legacy issues caused by personnel mobility due to the lack of unified tools in traditional methods. By splitting policy tasks into multiple functional parts, each functional part is responsible for editing the corresponding content, and the coordination of various functional components is used to achieve visual orchestration of intelligent decision-making rules and complex business decision-making processes, so that non-technical personnel can also participate in the rule-making and optimization process, greatly improving development efficiency and reducing dependence on program developers. By automatically mapping rule data to generate test forms, the effectiveness of business rules can be verified in real time, which can quickly respond to changes in market demand and improve overall efficiency.

[0063] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0064] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0065] Figure 1 is a system schematic diagram of an intelligent decision-making system combining an algorithm and business rules according to an exemplary embodiment;

[0066] Figure 2 is a data feature schematic diagram according to another exemplary embodiment;

[0067] Figure 3 is a schematic diagram of model characteristics according to another exemplary embodiment;

[0068] Figure 4 is a schematic diagram of variables according to another exemplary embodiment;

[0069] Figure 5 is a schematic diagram of interface debugging return parameters according to another exemplary embodiment;

[0070] Figure 6 is a schematic diagram of rule configuration according to another exemplary embodiment;

[0071] Figure 7 is a schematic diagram of a character string type characteristic condition according to another exemplary embodiment;

[0072] Figure 8 is a schematic diagram of a numerical type characteristic condition according to another exemplary embodiment;

[0073] Fig. 9 is a schematic diagram of model type characteristic conditions according to another exemplary embodiment;

[0074] Fig.10 is a schematic diagram of rule verification according to another exemplary embodiment;

[0075] Fig.11 is a schematic diagram of a strategy task according to another exemplary embodiment;

[0076] In the attached figure: 1-feature management module, 2-interface management module, 3-rule management module, 4-process management module, 5-batch task testing module. DETAILED DESCRIPTION

[0077] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of devices and methods consistent with some aspects of the present invention as detailed in the appended claims.

[0078] Embodiment 1

[0079] Figure 1 is a system diagram of an intelligent decision-making system combining algorithms and business rules according to an exemplary embodiment. Figure 1 As shown, the system includes:

[0080] Feature management module 1: used to generate data features according to specified business fields, or to generate model features according to tags corresponding to the model services built into the platform;

[0081] Interface management module 2: used to obtain the characteristic variables of the characteristic management module 1 and configure the variable values ​​of the corresponding characteristic variables; also used to obtain the interface variables of the output of other interfaces and configure the variable values ​​of the corresponding interface variables; also used to configure custom variables through custom configuration and automatically assign variable values ​​according to the custom variables;

[0082] It is also used to output feature variables, interface variables, and custom variables containing variable values ​​as interface features;

[0083] Rule management module 3: used to obtain data features, model features and interface features of the feature management module 1 and the interface management module 2, and classify the data features, model features and interface features into string type features, numerical type features and model type features according to data types;

[0084] It is also used to perform specific conditional determination on the string type feature according to the string logic operator to generate a string type feature condition; it is also used to perform specific conditional determination on the numerical type feature according to the numerical logic operator to generate a numerical type feature condition; it is also used to perform conditional determination on the model type feature according to the model logic operator to generate a model type feature condition;

[0085] It is also used to combine the selected string type feature conditions, numerical type feature conditions or model type feature conditions, and to obtain a rule expression by setting the output type and output value, and to place different rule expressions in a list to obtain a rule list;

[0086] Process management module 4: used to select one or more rule expressions in the rule list, and connect multiple rule expressions to execute in a specific order, and configure the end condition to obtain a policy task; put different policy tasks in the list to obtain a task list;

[0087] Batch task testing module 5: used to test the policy tasks in the task list respectively by uploading a data set in a specified format, issuing the successfully executed policy tasks, and deleting or reconfiguring the failed policy tasks;

[0088] It is understandable that if Figure 2 As shown, when you select Create Data Feature in Feature Management Module 1, a dialog box pops up, where you need to set the mapping field, customize the mapping name, specify the field type, and define the feature label as needed;

[0089] Mapping field: the business field of the newly created feature mapping. The option list is automatically associated with the big data warehouse business field list;

[0090] Mapping name: corresponding to the selected business field, customize the readable English name, limited to 64 characters in English or a combination of English and underscores;

[0091] Field type: the value type of the selected business field, including string, number, Boolean, etc.

[0092] Feature tag: optional. You can mark the feature tag as needed to classify and query features.

[0093] For online ride-hailing platforms, data features may include driver number, dispatch distance, whether the driver was on the phone, induced order cancellation, etc.

[0094] As attached Figure 3As shown, when selecting a new model feature in the feature management module 1, select the platform's built-in model service, select the mapped model tag, and define the feature tag as needed. The list of tags that each model service supports automatic recognition is fixed, and the option list of the mapped tag is automatically associated with the list of tags that the selected model service supports recognition; and the model features can be proactive greetings, smoking in the car, and call recording, etc.

[0095] Feature management module 1 supports quick query of target features by feature name, feature type, feature tag, and feature creation date. Click the "Query" button to query the target features according to the set query conditions. Click the "Reset" button to reset the query conditions and restore the default values.

[0096] Query by feature name: Enter the feature name in the input box to query the feature with the specified name. Fuzzy search of feature names is supported by entering query keywords.

[0097] Query by feature type: supports querying features of a specified type, and queries all types of features by default;

[0098] Query by creation date: Supports querying features created within a specified date range by selecting a date range;

[0099] Query by feature tag: Click the drop-down button and select a feature tag from the list of all feature tags to query the features of the specified tag. It supports selecting multiple feature tags at one time and supports fuzzy query of feature tags through the search box.

[0100] Unreferenced data features: All fields support online editing;

[0101] Unreferenced model features: All fields support online editing;

[0102] Referenced data features and model features: Only feature names and feature labels can be edited, and other field information cannot be edited;

[0103] Deleting referenced features: Referenced features cannot be deleted. Click the "Delete" button and a deletion prompt dialog box will pop up, prompting which rule sets are being referenced and cannot be deleted.

[0104] Delete unreferenced features: For unreferenced features, click the "Delete" button, and a deletion confirmation dialog box will pop up to confirm the deletion of the currently selected feature. Confirm the deletion, otherwise cancel the deletion;

[0105] When editing an interface in the interface management module 2, include the interface name, request method: GET / POST, and interface request URL address, as shown in the attached Figure 4As shown, the interface request parameters include: variable name, value type (string or number), variable value type: including feature variables, which come from feature management module 1; custom variables, which come from custom editing of interface management module 2; interface variables, which come from output of other interfaces; variable value: for interface variables, the parameter path is automatically mapped, such as object1.object11.param112; for custom variables, the custom variable value is automatically assigned to the variable value; for feature variables, 1 or 0 is usually used to represent the variable value, 1 means that the condition is met or met, and 0 means that the condition is not met or not met;

[0106] For feature variables and interface variables, it supports configuration of sample values, which are used as default variable values ​​during interface debugging;

[0107] After editing is completed, click the Save button to save the currently added / edited interface request parameters; click the Delete button to delete the current request parameters.

[0108] Click the debug button in the interface management module 2. If the interface parameter example value meets the interface call requirements, the interface debugging result is displayed in the debug result box; the json format return parameter is automatically generated in the return parameter box, as shown in the attached figure. Figure 5 As shown; for newly added interfaces, the debugging result and return parameter boxes are empty; for non-new interfaces, the debugging result and return parameter boxes are automatically filled with the most recently saved data of the interface; before debugging, the debugging result and return parameter boxes;

[0109] The return parameter provides an edit button, which is in a non-editable state by default. Click the edit button to make the return parameter text box editable. It supports selecting all, copying, and editing the return parameter description in json format.

[0110] For the return parameters, click the OK button to verify the format of the interface return parameters. The verification content includes:

[0111] Is the json format correct? The code, name, and type of each return parameter are not allowed to be empty!

[0112] The return parameter format requires the description of each field name, type, and value to be provided in JSON format. Some examples of return parameters are as follows:

[0113] { "type": "object", "properties": { "code": { "type": "integer"}, "message": { "type": "string"}, "data": { "type": "object", "properties": { "is_support_city": { "type": "integer", "title": "Whether to support joining the city", "description": "1: Yes, 0: No, 2: Unknown, 3: Address not extracted, return 1 when the following two fields have values"}, "extract_addr": { "type": "string", "title": "Extracted address information", "description": "Prioritize the city display, for example: Can Beijing Haidian District join, return Beijing"};

[0114] Interface data verification:

[0115] Whether the required fields have been filled, including interface name, request method, request address, and return parameters;

[0116] Is there a duplicate interface name? A prompt message will be displayed under the name item;

[0117] Is the requested address available? The interface verification prompt information is displayed under the requested address;

[0118] Interface data verification prompts abnormal type:

[0119] If there are mandatory items that are not filled in, the corresponding items will be marked with red font to indicate which item is not filled in;

[0120] The requested address is not accessible;

[0121] The newly created interface names are identical;

[0122] Click the Edit button to open the interface editing dialog box and modify the basic information, request parameters, and return parameters of the interface; determine whether the interface is being referenced by a rule. If it is, a pop-up window will pop up to prompt which rules are being referenced, and modification is not allowed;

[0123] Click the Delete button, and a dialog box will pop up to prompt whether to confirm the deletion. After confirmation, the interface will be deleted. Determine whether the interface is being referenced by a rule. If it is referenced, a dialog box will pop up to prompt which rules are referencing it, and deletion is not allowed.

[0124] The new rule pop-up window in the rule management module 3 consists of three panels: "Basic Information", "Rule Configuration", and "Rule Verification". The basic information includes the name, label, description and other basic information of the rule. The rule name is a required item, and multiple labels are separated by "#";

[0125] By adding "and" or "or", you can configure the logical judgment expression of the specified field type. By setting the output type and content, you can configure the decision output value of the rule. This version supports both string and numeric output types, as shown in the attached figure. Figure 6 As shown;

[0126] Click the "+" button to add a row, and a function menu list will pop up. Single-row conditions only support adding "same row and / or" conditional expressions. When adding rows, only conditional rows with the same "and / or" relationship can be added at the same level, and conditional rows with mutually exclusive "and / or" relationships can be added at the upper and lower levels.

[0127] As attached Figure 7 As shown, the string type feature condition line:

[0128] Select the string type feature to configure the condition row, dynamically trigger the string logic operation control group, and support equal to, not equal to, contain, not contain, match regular expression, do not match regular expression, start with, end with, is empty, and is not empty;

[0129] Is empty / is not empty: Similar to the enumeration type feature, when the Is empty / is not empty logical operation is selected, the threshold control behind it is automatically deleted;

[0130] Equal / Not Equal: Determine whether the selected feature value is equal to the input threshold value;

[0131] Contains / does not contain: determines whether the selected feature value contains the input threshold content;

[0132] Match regular expression / Do not match regular expression: Determine whether the selected feature value matches or does not match the input regular expression;

[0133] Starts with: Determines whether the selected feature value starts with the input content;

[0134] Ends with: Determines whether the selected feature value ends with the input content.

[0135] As attached Figure 8 As shown, the numerical type feature condition line:

[0136] Select the numerical type feature to configure the condition row, dynamically trigger the numerical logic operation control group, and support equal to, not equal to, greater than, less than, greater than or equal to, less than or equal to, empty, and not empty;

[0137] Is empty / is not empty: Similar to enumeration type features and string type features, when the Is empty / is not empty logical operation is selected, the threshold control behind it is automatically deleted;

[0138] When adding a numerical condition row, the drop-down option control automatically changes to an input box, which supports editing complex operation expressions for numerical features. At the same time, the selected numerical type feature automatically changes to a blue font starting with the @ symbol, indicating that it is a reference feature element. To easily distinguish the referenced feature from other contents of the expression, @+feature name is highlighted in blue, and other contents are normal black, such as "(@dispatch distance (blue) - @pick-up point distance (blue))*1.5 (black) + 5 (black)". When you need to reference a feature, enter the @ symbol to dynamically pull the list of numerical type features that have been managed in the system, and select automatic filling of expression content. It supports fuzzy searching of associated feature names by entering a feature name to start the string content.

[0139] As attached Fig. 9 As shown, the model type feature condition line:

[0140] Select the model type feature configuration condition row to dynamically trigger the numerical logic operation control group. Supports four operations: hit, miss, at least hit, and at most hit;

[0141] When selecting at least hit and at most hit, you need to configure the number of hits, the default is 1;

[0142] When you select Hit and Miss, you do not need to configure the number of hits.

[0143] In the rule expression configuration box, set the decision output value of the rule. It supports two types of rule output values: string and numeric. At least one output value must be set. The default is string type. When selecting numeric type, you need to verify whether the input content type is numeric type.

[0144] When adding a conditional row, the rule validation panel dynamically adds a new field row for inputting content and validating the decision output result; as shown in the attached Fig.10 As shown, when you enter the test data and click the Verify button, the expression format will be automatically verified for correctness. If it is correct, it will pass; if it is wrong, it will fail. At the same time, the corresponding output value of the set test data will be verified and output. When the rule expression format is incorrect, in addition to displaying the verification result as "failed", a prompt for the error type will be given.

[0145] There are four types of expression format validation errors: (1) Numerical operation expression error; (2) Conditional row structure missing, including two types of missing: only feature option box and incomplete condition judgment threshold content; (3) Decision result not configured: at least one decision result must be configured, and both cannot be set; (4) Abnormal decision result configuration: Select the numeric type, configure non-numeric content, and set two outputs at the same time, requiring the output type to be consistent.

[0146] When the rule verification is saved, the latest verification data configuration and verification results are saved at the same time;

[0147] After the rule expression is verified, directly save the new rule. If the expression is not verified, a dialog box will pop up saying "The rule expression verification failed and cannot be saved!"

[0148] Click the "Rule Management" navigation button to enter the rule list page, where you can quickly view rule information such as rule ID, name, rule tag, description, enabled status, creator, creation time, etc.

[0149] Supports quick query of target rules by rule name, status, rule tag, and rule creation date. Click the "Query" button to query the target rules according to the set query conditions. Click the "Reset" button to reset the query conditions and restore the default values.

[0150] Query by rule name: Enter the rule name in the input box to query the rule with the specified name. Fuzzy search of rule names is supported by entering query keywords.

[0151] Query by rule status: supports selecting rules of specified status, including all, disabled, enabled, and all are queried by default;

[0152] Query by creation date: Supports querying rules created within a specified date range by selecting a date range;

[0153] Query by rule tag: Click the drop-down button and select a rule tag from the list of all rule tags to query the rules of the specified tag. It supports selecting multiple rule tags at one time and supports selecting rule tags through the search box and fuzzy query. The control design is the same as that of the feature tag.

[0154] The rules that have passed the verification and are saved are disabled by default. The operation bar provides an "Enable" button. Click the Enable button and the operation button changes to a Disable button.

[0155] Disable the referenced rule: Click the Disable button to check whether the rule is being referenced by the policy process. If it is, a pop-up window will pop up to remind you that the current rule cannot be disabled.

[0156] Disable unreferenced rules: the rule status changes to disabled, and the operation button changes to enabled, directly switching the status and operation button value;

[0157] For enabled rules, you can only view the rule details, but not edit or modify the rule information. The pop-up window is named "View Rules" and there is no Cancel or Save button at the bottom. The rule content in the pop-up window cannot be edited and can only be viewed.

[0158] For rules in disabled state, you can edit and modify the rule information. The pop-up window is named "Edit Rule". After modifying the content, you also need to verify that the expression passes before saving.

[0159] Delete the referenced rule: Click the Delete button, a pop-up window will pop up to confirm the deletion. Click the Confirm button in the confirmation pop-up box to determine whether the rule is being referenced by the policy process. If it is, a pop-up window will pop up to prompt that the current rule cannot be deleted;

[0160] Delete unreferenced rules: Click the Delete button, a pop-up window will pop up to confirm the deletion, click the "Confirm" button to delete the rule;

[0161] Click the Copy button to directly copy all the configuration contents of the rule and create a new rule. The pop-up window will be named "New Rule". After modifying the content, you also need to verify that the expression passes before saving.

[0162] In the process management module 4, click the "New Policy Process" button, and a new pop-up window will pop up on the right. Set the name, label, and basic information of the new policy process. Click the "OK" button to save and create a new policy process. Click the "Cancel" button to cancel the creation.

[0163] Supports quick query of target policy process by policy process name, status, label, and policy process creation date.

[0164] Click the "Query" button to query the target policy process according to the set query conditions. Click the "Reset" button to reset the query conditions and restore the default values.

[0165] Query by policy flow name: Enter the policy flow name in the input box to query the policy flow with the specified name. Fuzzy search of policy flow names is supported by entering query keywords.

[0166] Query by status: supports selecting policy processes of specified status, including all, published, and unpublished. The default query is all;

[0167] Query by creation date: Supports querying policy processes created within a specified date range by selecting a date range;

[0168] Query by tag: Click the drop-down button and select a tag from the list of all policy process tags to query the policy process of the specified tag. It supports selecting multiple policy process tags at one time and supports fuzzy query of policy process tags through the search box. The control design is the same as the feature tag.

[0169] For a published policy process, you can only view the policy process information, but not edit or modify it. The pop-up window is named "View Policy Process".

[0170] A close button is provided at the bottom of the pop-up window to close the pop-up window, and a close button is provided at the upper right corner of the pop-up window to close the pop-up window; the policy process content in the pop-up window cannot be edited and can only be viewed;

[0171] The policy process in the unpublished state allows editing and modification of information, and the pop-up window is named "Edit Policy Process";

[0172] The "Delete" button of the published policy process is grayed out and cannot be operated;

[0173] For unpublished policy processes, click the "Delete" button to open the deletion confirmation pop-up window, click the "Confirm" button to delete the selected policy process, and click the "Cancel" button to cancel the deletion operation;

[0174] Click on the unpublished policy flow, click to open the policy flow configuration page, and configure the policy flow:

[0175] Start Node:

[0176] The start node is already present by default and cannot be deleted;

[0177] Each policy flow supports only one start node.

[0178] Double-click the node to edit the node information. The start node name is dynamically associated with the selected policy process name by default, and supports custom editing and renaming. Click the "Save" button to save the modified start node configuration content, and click the "Cancel" button to cancel the modification operation and retain the content before modification.

[0179] Select the "Rule Node" component on the left side of the canvas, drag it to any position on the canvas, and configure the policy flow by connecting lines;

[0180] The start node can only be connected to one regular node;

[0181] The connection between the start node and the rule node supports selection and deletion, but not editing;

[0182] Connect the start node to another rule node and delete its connection with other rule nodes;

[0183] Double-click the node to configure the rule node information (after the rule node is configured and saved successfully, it supports connecting to other rule nodes or end nodes. Otherwise, when connecting, it will prompt "the rule node to start the connection is not configured");

[0184] The rule node name is dynamically associated with the bound rule name and can be customized and renamed;

[0185] End Node:

[0186] Select the "End Node" component on the left side of the canvas, drag it to any position on the canvas, and configure the policy flow output by connecting the rule node and the end node;

[0187] Connection:

[0188] Click the middle area of ​​the node that allows the connection to be initiated, keep clicking, drag the mouse to the middle area of ​​the target node to establish a connection between the two nodes; click the connection, select the connection, enter the delete key information, and delete the selected connection; click the connection, select the connection, and double-click to edit the selected connection (only the connection initiated by the rule node supports double-click editing); the policy task obtained after the connection is as shown in the attached figure. Fig.11 shown.

[0189] Association rule node: By default, the rule name bound to the associated initiating node is displayed;

[0190] Select rule output: By default, the options with output values ​​configured for the association rules are displayed. If both satisfied and unsatisfied output values ​​are configured, satisfied output is selected by default.

[0191] Set branch name: Set the connection name displayed in the policy process. By default, it is dynamically associated with the output value of the selected rule node configuration. It can be customized and renamed.

[0192] Connection rules:

[0193] The start node can only be connected to a rule node, and can only be connected to one rule node. When the start node is connected to a rule node, the rule node can be unconfigured.

[0194] The rule node supports connecting rule nodes and end nodes. The rule node initiated by the connection needs to be configured and saved successfully, otherwise a pop-up window will prompt "The rule node started by the connection is not configured";

[0195] When connecting rule nodes, if the bound rule has output values ​​configured for both the satisfied and unsatisfied branches, the rule node allows two connections to be initiated to connect different post-nodes. Otherwise, only one connection is supported.

[0196] End nodes are not allowed to initiate connections.

[0197] Canvas Operations:

[0198] Strategy process nodes and associated lines can be dragged to any location;

[0199] After selecting the strategy flow nodes and lines, you can delete the selected nodes or lines by entering the delete key;

[0200] Delete a node and the associated lines will be deleted simultaneously;

[0201] Supports selecting multiple nodes and lines in a region and deleting them by entering the delete key;

[0202] The strategy process can be moved to any position on the canvas;

[0203] The policy flow supports scaling.

[0204] Save the configuration:

[0205] Click the "Save" button. When saving the configuration, you need to verify whether the configured policy process is compliant;

[0206] When saving, you need to check whether the current saved process has conditional branches, rule nodes, and end nodes that are not configured. If there is a prompt to complete the configuration or delete useless nodes before saving the process; when saving, you need to check whether the current process has a path from the start node to the end node. If there is at least one path, saving is allowed.

[0207] The policy process has been published. The policy process does not allow configuration / modification of the process process and only supports viewing.

[0208] When batch testing policy tasks through batch task testing module 5:

[0209] No policy process is configured successfully:

[0210] After creation, if there is no policy process that has been successfully configured and saved, the test button is grayed out and cannot be operated.''

[0211] The policy process for successful configuration is as follows:

[0212] After creation, the policy process that has been configured and saved successfully supports testing in both unpublished and published states. Click the "Test" button to open the test window. According to the configured policy process, a form that requires input of data source fields is automatically generated.

[0213] Enter the test data, click the "Verify" button to start the test, click the "Refresh" button to refresh the test process and view the test results, or close the pop-up window, wait for the test to end, and click the "Test" button again to view the latest test results of the strategy process; click the "Reset" button to modify the test data and retest;

[0214] When creating a new policy process, the default status is unpublished. If the configuration information is not saved, the publish button is grayed out and cannot be operated. If the configuration information is successfully saved, the publish button can be operated. Click the "Publish" button, the button switches to the "Remove" function button, the process status changes to published, and the interface information of the policy process is updated synchronously.

[0215] The status of the policy process that has been released is "released". If you want to edit and configure the policy process, click the "Remove" button to change it to "Unreleased" status and edit the basic information and configure the policy process.

[0216] In the batch task test module 5, click the "New Task" button, and a pop-up window will appear to configure the new batch test task information;

[0217] Task name: edit the batch test task name;

[0218] Strategy flow: Select the strategy flow for batch testing;

[0219] Click "Download Import File Template" to download the batch test import file template corresponding to the selected strategy process; upload the file in the specified format and click the "OK" button to create a new batch test task; when you click the "OK" button, the uploaded batch test data format is verified according to the selected strategy process to verify whether it contains all the data source fields required by the process;

[0220] Click the "Task Center" navigation button to enter the batch test task list page; you can quickly view the task ID, name, policy flow name, status, task failure prompt information, creator, creation time and other information; if the execution fails, the failure reason will be prompted; if the execution succeeds, it will prompt which data rows failed / error;

[0221] Supports quick query of target batch test tasks by task name, status, policy process name, and task creation date; click the "Query" button to query the target task according to the set query conditions, and click the "Reset" button to reset the query conditions and restore the default values.

[0222] Query by task name: Enter the task name in the input box to query the batch test tasks with the specified name. Fuzzy search of task names is supported by entering query keywords.

[0223] Query by status: Supports selecting tasks of specified status, including all, executing, failed, successful, and waiting for execution. The default query is all;

[0224] According to the system resource configuration, set the size of the simultaneous execution queue, which can be configured in the configuration file;

[0225] After the new task is completed, determine whether the execution queue is idle?

[0226] Idle tasks enter the execution queue directly and the status is "executing";

[0227] If it is not idle, it will be added to the waiting queue directly, and its status will be waiting for execution;

[0228] The execution queue is idle, select a task from the waiting queue to execute, and change the task status;

[0229] Query by creation date: Supports selecting a date range to query tasks created within a specified date range;

[0230] Query by policy process name: Enter the policy process name in the input box to query the batch test tasks of the specified policy. Fuzzy search of policy names can be supported by entering query keywords.

[0231] After successfully executing the task, export the batch task results by clicking the Download button.

[0232] Click the Delete button to delete the specified task;

[0233] The task being executed ends the process and deletes it from the execution queue, deletes the saved result data, and deletes the task record;

[0234] Tasks waiting to be executed are deleted from the waiting queue and the task records are deleted;

[0235] Execute failed tasks, delete saved result data, and delete task records;

[0236] Execute the successful task, delete the saved result data, and delete the task record.

[0237] It can be understood that the same or similar parts of the above embodiments can be referenced to each other, and the contents not described in detail in some embodiments can refer to the same or similar contents in other embodiments.

[0238] It should be noted that, in the description of the present invention, the terms "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or implying relative importance. In addition, in the description of the present invention, unless otherwise specified, the meaning of "plurality" refers to at least two.

[0239] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.

[0240] It should be understood that the various parts of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0241] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiment.

[0242] In addition, each functional unit in each embodiment of the present invention may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.

[0243] The storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disk, etc.

[0244] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.

[0245] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may change, modify, replace and vary the above embodiments within the scope of the present invention.

Claims

1. An intelligent decision-making system combining algorithms and business rules, characterized in that: The system comprises: Feature management module: used to generate data features based on specified business fields, or to generate model features based on the tags corresponding to the platform's built-in model services; The attributes of the data feature include: data feature ID and name, feature type, business field of the big data warehouse associated with the data feature, name of the associated business field, value type of the associated business field, and data feature label; The attributes of the model feature include: model feature ID and name, feature type, model service, mapping tag and model feature tag; The data feature tag or model feature tag is used to query data features or model features; The feature management module is also used to freely edit all attribute fields of data features or model features that are not referenced by regular expressions, freely edit the data feature ID, name and data feature label of data features referenced by any regular expression, and freely edit the model feature ID, name and model feature label of model features referenced by any regular expression; The feature management module is also used to delete online the data features or model features that are not referenced by the regular expression; The feature management module is also used to query any data feature or model feature, obtain its attribute fields and all the rule expressions being referenced; Interface management module: used to obtain the characteristic variables of the characteristic management module and configure the variable values ​​of the corresponding characteristic variables; also used to obtain the interface variables of the output of other interfaces and configure the variable values ​​of the corresponding interface variables; also used to automatically assign variable values ​​according to the custom variables by custom configuration of custom variables; It is also used to output feature variables, interface variables, and custom variables containing variable values ​​as interface features; Rule management module: used to obtain data features, model features and interface features of the feature management module and the interface management module, and classify the data features, model features and interface features into string type features, numerical type features and model type features according to data types; It is also used to perform specific conditional determination on the string type feature according to the string logic operator to generate a string type feature condition; it is also used to perform specific conditional determination on the numerical type feature according to the numerical logic operator to generate a numerical type feature condition; it is also used to perform conditional determination on the model type feature according to the model logic operator to generate a model type feature condition; It is also used to combine the selected string type feature conditions, numerical type feature conditions or model type feature conditions, and to obtain a rule expression by setting the output type and output value, and to place different rule expressions in a list to obtain a rule list; Process management module: used to select one or more rule expressions in the rule list, and connect multiple rule expressions to execute in a specific order, and configure the end condition to obtain the policy task; put different policy tasks in the list to obtain the task list; Batch task testing module: used to test the policy tasks in the task list separately by uploading data sets in a specified format, issue policy tasks that are successfully executed, and delete or reconfigure policy tasks that fail to execute.

2. The system according to claim 1, characterized in that The variables acquired by the interface management module include: variable name, value type, variable value type, variable value, example value and variable description; The variable value types include feature variables, interface variables and custom variables; The example value is used as the default variable value when the interface management module performs interface debugging; When the interface management module debugs the interface, it returns the debugging parameters, and judges whether the required items of the variables have been filled, whether the same interface exists, and whether the request address is available according to the debugging parameters; if any required item is not filled, the same interface exists, or the request address is unavailable, the interface debugging fails; The interface management module is also used to edit and modify the interface that is not referenced by any of the regular expressions; The interface management module is also used to delete the interface that is not referenced by any of the regular expressions.

3. The system according to claim 2, characterized in that The rule expression includes a rule name, a rule label and a rule description; The rule management module also includes a rule configuration panel, which is used to configure and edit the rule expression; The rule configuration module is used to generate a string type feature condition by selecting a string type feature and performing a specific condition determination on the string type feature according to the string logical operator; The string logic operation words include: equal to, not equal to, contain, not contain, match regular expression, do not match regular expression, start with, end with, is empty, and is not empty; The rule configuration panel is used to generate a numerical type feature condition by selecting a numerical type feature and performing a specific condition judgment on the numerical type feature according to the numerical logic operator; the numerical logic operator includes: equal to, not equal to, greater than, less than, greater than or equal to, less than or equal to, empty, and not empty; when the numerical type feature is selected in the rule configuration panel, it supports operating the referenced numerical type feature through an operation expression; The rule configuration section is used to generate a model type feature condition by selecting a model type feature and performing conditional judgment on the model type feature according to the model logic operation words; the model logic operation words include: hit, miss, at least hit, and most hit; when selecting at least hit and most hit, the number of hits needs to be configured, and the default number of hits is 1; The rule configuration module is also used to combine one or more string type feature conditions, numerical type feature conditions and model type feature conditions through conjunctions, and set the output type and output value to obtain a rule expression, wherein the conjunctions include: or, and; The rule management module also includes a rule verification module, which is used to verify the generated rule expression; The situations where the rule expression verification result fails include: the operation expression is wrong, any characteristic condition structure in the rule expression is missing, the rule expression output is not configured, and the rule expression output is abnormal; the rule expression that passes the verification result is saved and placed in the rule list.

4. The system according to claim 3, characterized in that The rule management module is also used to query the target rule expression through any one or more of the rule expression name, status, rule tag and rule creation date; The states of the rule expressions include enabled and disabled. A rule expression that has passed verification and has been saved is disabled by default. A rule expression that is being referenced by any policy task is not allowed to be changed to disabled. The rule management module is also used to edit the rule expression in the disabled state. The edited new rule expression needs to be verified by the rule verification module before it can be saved and added to the rule list; The rule management module is also used to delete the rule expressions that are not referenced by any policy tasks.

5. The system according to claim 4, characterized in that The policy task includes basic information and interface information, wherein the basic information includes: policy ID and name, policy tag, policy description, policy status, policy creator and policy creation time; The policy status includes published and unpublished; for a policy task in the published state, the process management module only allows viewing the basic information and interface information of the policy task, and does not allow editing and modification; The interface information includes the interface addresses of all rule expressions referenced by the policy task; The process management module is used to edit, modify and delete unpublished policy tasks.

6. The system according to claim 5, characterized in that The strategy tasks all include a start node, a rule node and an end node; The start node is the system default, and the rule node includes one or more rule expressions; the process starts with the start node and ends with the end node. The end node includes one or more. The rule node is an intermediate step in the process. The start node is connected to a rule node, and the rule node can be connected to multiple rule nodes at the same time. A rule node is connected to one or more end nodes; When both the satisfied and unsatisfied branches in the rule expression corresponding to any rule node are configured with output values, the rule node allows initiating two connections to connect different post-rule nodes or end nodes. Otherwise, the rule node only supports initiating one connection.

7. The system according to claim 6, characterized in that The batch task testing module is used to test the successfully configured and saved policy tasks; When the batch task testing module performs batch testing on the policy task by acquiring a data set in a specified format, the data format in the uploaded data set is verified to see whether it contains all the data source fields required by the rule expression included in the policy task. If the verification passes, the test is performed; If the test result fails, the batch task test module displays which characteristic condition in which rule expression corresponds to the data execution failure; The batch task testing module is also used to terminate the process of the policy task being tested and delete it from the execution queue, delete the saved result data, and delete the task record; The batch task testing module is also used to delete the policy tasks waiting for execution test from the waiting queue and delete the task records; The batch task test module is also used to delete the saved result data and task records for the policy tasks that failed the test; The batch task testing module is also used to delete the saved result data and task records for tasks that have been successfully tested.

Citation Information

Patent Citations

  • Process management platform based on ACTIVITI

    CN112700219A

  • Method and system for realizing custom service logic rule

    CN114896284A