Decision engine migration method, device, storage medium and electronic device

By adopting parallel decision-making and decision-making differential data processing methods during the decision-making engine migration process, the problem of unsatisfactory decision-making accuracy after strategy migration in the traditional method is solved, and business continuity and decision-making accuracy are improved.

CN119761859APending Publication Date: 2025-04-04CHINA TELECOM BESTPAY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411941744.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

During the strategy migration between new and old decision engines, traditional methods are difficult to ensure business continuity and stability, resulting in unsatisfactory decision accuracy.

Method used

By using the initial decision engine and the target decision engine to make decisions on the initial data in the predetermined policy scenario in parallel, the decision difference data is determined, and the target data is migrated from the initial decision engine to the target decision engine for decision processing according to the decision difference data.

Benefits of technology

It ensures business continuity during the policy migration process, and improves the accuracy and stability of decision-making after policy migration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119761859A_ABST
    Figure CN119761859A_ABST
Patent Text Reader

Abstract

The present invention discloses a decision engine migration method, device, storage medium and electronic device. The method comprises: using an initial decision engine and a target decision engine to make decisions on initial data in a predetermined strategy scenario in parallel, obtaining an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; determining decision difference data based on the initial decision result and the target decision result; according to the decision difference data, migrating the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data. The present invention solves the technical problem in the related art that the decision accuracy of the old and new decision engines after strategy migration is not ideal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of financial technology and risk assessment, and in particular to a decision engine migration method, device, storage medium and electronic device. Background Art

[0002] The performance and stability of the decision engine are crucial to the continuous operation of the business. With the development of the business and the continuous iteration of new technologies, the old engine can no longer meet the business requirements in terms of function or performance, so it is necessary to migrate the existing policies to the new generation engine. However, when migrating policies between the old and new decision engines, traditional methods often make it difficult to ensure the continuity and stability of the business. Direct switching may cause instantaneous interruption of the business, affecting user experience and business continuity. Although gradually decommissioning the old system can alleviate the risk of business interruption, in the early stage of the new system going online, due to the lack of comprehensive and accurate performance evaluation, the decision consistency and smooth operation of the new system cannot be fully guaranteed. At present, there is a technical problem in the relevant technology that the decision accuracy of the old and new decision engines after policy migration is not ideal.

[0003] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention

[0004] The embodiments of the present invention provide a decision engine migration method, device, storage medium and electronic device to at least solve the technical problem in the related art that the decision accuracy of the new and old decision engines is not ideal after the strategy migration.

[0005] According to one aspect of an embodiment of the present invention, a decision engine migration method is provided, comprising: using an initial decision engine and a target decision engine to make decisions on initial data in a predetermined strategy scenario in parallel, obtaining an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; determining decision difference data based on the initial decision result and the target decision result; and migrating the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing according to the decision difference data, wherein the target decision result is effective for the migrated target data.

[0006] Optionally, the method also includes: when there are multiple predetermined strategy scenarios, setting flow control switches for each of the multiple predetermined strategy scenarios; adjusting the switch states of the flow control switches corresponding to the multiple predetermined strategy scenarios according to migration requirements; and sending the target data in the predetermined strategy scenarios with the corresponding switch state being turned on to the target decision engine for decision processing.

[0007] Optionally, determining the decision difference data based on the initial decision result and the target decision result includes: determining the deviation state between the initial decision result and the target decision result for the initial data; obtaining a decision weight value corresponding to the deviation state; and determining the decision difference data based on the deviation state and the decision weight value.

[0008] Optionally, obtaining the decision weight value corresponding to the deviation state includes: obtaining historical decision results of the predetermined strategy scenario in a historical time period, and historical feedback data obtained by executing the historical decision results; and determining the decision weight value based on the historical decision results and the historical feedback data.

[0009] Optionally, according to the decision difference data, the target data in the predetermined strategy scenario is migrated from the initial decision engine to the target decision engine for decision processing, including: determining that the target decision engine satisfies the target duration for the decision difference data to be less than a predetermined difference threshold; when the target duration is greater than the predetermined duration threshold, changing the traffic path of the target data from being sent to the initial decision engine to being sent to the target decision engine; and migrating from the initial decision engine to the target decision engine to perform decision processing on the target data.

[0010] Optionally, after the migration from the initial decision engine to the target decision engine for decision processing, the method further includes: in the event of an abnormality in the target decision engine, changing the traffic path of the target data from being sent to the target decision engine to being sent to the initial decision engine; and rolling back from the target decision engine to the initial decision engine to perform decision processing on the target data.

[0011] Optionally, the method also includes: determining the decision response time and decision error rate of the target decision engine; determining the stability score of the target decision engine based on the decision response time and the decision error rate; and determining that there is an abnormality in the target decision when the stability score is less than a predetermined abnormality threshold.

[0012] According to another aspect of an embodiment of the present invention, a decision engine migration device is provided, comprising: a decision result acquisition module, used to use an initial decision engine and a target decision engine to make decisions on initial data in a predetermined strategy scenario in parallel, and obtain an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; a difference data determination module, used to determine decision difference data based on the initial decision result and the target decision result; a decision result processing module, used to migrate the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing according to the decision difference data, wherein the target decision result is effective for the migrated target data.

[0013] According to another aspect of an embodiment of the present invention, a non-volatile storage medium is provided, wherein the non-volatile storage medium stores a plurality of instructions, wherein the instructions are suitable for being loaded by a processor and executing any one of the decision engine migration methods.

[0014] According to another aspect of an embodiment of the present invention, there is provided an electronic device, comprising: one or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement any one of the decision engine migration methods.

[0015] In the embodiment of the present invention, by using the initial decision engine and the target decision engine, the initial data in the predetermined strategy scenario are decided in parallel, and the initial decision result of the initial decision engine and the target decision result of the target decision engine are obtained, wherein the initial decision result is effective for the initial data; based on the initial decision result and the target decision result, the decision difference data is determined; according to the decision difference data, the target data in the predetermined strategy scenario is migrated from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data. The purpose of ensuring business continuity is achieved, and the technical effect of improving the accuracy of decisions after strategy migration is realized, thereby solving the technical problem of unsatisfactory decision accuracy of the new and old decision engines after strategy migration in the related technology. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of this application. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:

[0017] Figure 1is a flowchart of an optional decision engine migration method provided according to an embodiment of the present invention;

[0018] Figure 2 is a first schematic diagram of an optional decision engine migration method provided according to an embodiment of the present invention;

[0019] Figure 3 It is a schematic diagram of an optional decision engine migration device provided according to an embodiment of the present invention. DETAILED DESCRIPTION

[0020] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0021] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0022] According to an embodiment of the present invention, a method embodiment of decision engine migration is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0023] Figure 1 is a flowchart of an optional decision engine migration method provided according to an embodiment of the present invention. Figure 1 As shown, the method comprises the following steps:

[0024] Step S102, using the initial decision engine and the target decision engine to make decisions on the initial data in the predetermined strategy scenario in parallel, to obtain an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data;

[0025] It can be understood that through parallel processing, the initial decision engine and the target decision engine are enabled at the same time. The initial decision engine is the old system, and the target decision engine is the new system. Decision analysis is performed on the initial data under the predetermined strategy scenario to obtain the initial decision results and the target decision results. The initial decision results are effective for the initial data. The new and old systems run and process the same data at the same time to ensure business continuity and stability, that is, the current business operations are still based on the decision results of the initial decision engine, and the decisions of the new engine are only used for data comparison and verification, and have no direct impact on the business. This parallel decision-making mechanism enables the system to test and evaluate the decision-making capabilities of the new engine in real time without affecting the existing business processes, effectively reducing the risk of system migration and ensuring decision consistency and a smooth transition of the business.

[0026] In an optional embodiment, the method also includes: when there are multiple predetermined strategy scenarios, setting flow control switches for each of the multiple predetermined strategy scenarios; adjusting the switch states of the flow control switches corresponding to the multiple predetermined strategy scenarios according to migration requirements; and sending the target data in the predetermined strategy scenarios whose corresponding switch states are turned on to the target decision engine for decision processing.

[0027] It can be understood that the traffic of multiple predetermined policy scenarios is finely controlled. By setting the traffic control switch, the switch status of the traffic control switch corresponding to multiple predetermined policy scenarios is adjusted according to the migration requirements, and the traffic distribution of the new and old engines in each scenario is flexibly adjusted. The target data in the predetermined policy scenario with the corresponding switch status turned on is sent to the target decision engine for decision processing. The on-demand control strategy enhances the controllability and flexibility of the migration process, allowing the new engine to be gradually verified and introduced without affecting business continuity, reducing the risk of the entire migration process.

[0028] Optionally, multiple predetermined policy scenarios can be stored in the form of a policy scenario list, and a total control bit can be set for multiple predetermined policy scenarios for one-click switching. The initialization and configuration of the traffic switch state can be as follows: the total control bit is in the closed state (TotalSwitch=0), TotalSwitc is the total control switch, 0 represents the closed state, and the policy scenario list sets the traffic routing control bit (ab mode) for each predetermined policy scenario, where the a bit (TrafficReplicationFlag) and the b bit (DecisionEffectiveFlag) are both initialized to 0. TrafficReplicationFlag is a traffic replication flag, a control bit for each predetermined policy scenario, used to decide whether to route traffic to the new engine for replication processing. DecisionEffectiveFlag is a decision effectiveness flag, which is also set for each policy scenario to decide whether to use the decision result of the new engine or the old engine.

[0029] Optionally, the above-mentioned dynamic traffic replication method can be multiple, for example, turn on the TrafficReplicationFlag of the scenario that needs to be compared in the policy scenario list, and route the scenario traffic to the new engine for business data replication. The decision result switching process is as follows: modeln represents the nth predetermined policy scenario, and the DecisionEffectiveFlag of the predetermined policy scenario that has passed the modeln verification is set to 1 (ie: 1_1_modeln, indicating that the traffic under the nth predetermined policy scenario will be sent to the new and old engines at the same time, but the decision is based on the result of the new engine, and the decision result of the old engine is only used for replication and monitoring). If a problem occurs, the DecisionEffectiveFlag is set to 0 (ie: 0_0_modeln, the decision is based on the old one and replication is closed, and the decision result of the new engine is not effective. After the migration is completed, the engine shuts down replication, that is, all model single configuration TrafficReplicationFlags are set to 0, traffic replication is stopped, and the decision result is based on the new engine.

[0030] Step S104, determining decision difference data based on the initial decision result and the target decision result;

[0031] It can be understood that by comparing the decision results generated by the initial decision engine and the target decision engine when processing the same data, the difference between the initial decision result and the target decision result is analyzed to determine the decision difference data. By quantifying the decision difference, the decision accuracy of the target decision engine is objectively evaluated, and the source of the decision difference in a specific scenario is identified, which provides a basis for subsequent system optimization and decision result switching.

[0032] In an optional embodiment, decision difference data is determined based on an initial decision result and a target decision result, including: determining a deviation state between the initial decision result and the target decision result for the initial data; obtaining a decision weight value corresponding to the deviation state; and determining decision difference data based on the deviation state and the decision weight value.

[0033] It can be understood that for the initial data, the deviation state between the initial decision result and the target decision result is determined, and the decision weight value corresponding to the deviation state is obtained by analyzing the deviation state of each decision case. According to the deviation state and the decision weight value, the decision difference data is determined to quantify the difference between the decision results. Through weighted calculation, decision difference data that more accurately reflects the performance of the new system can be obtained, providing strong support for the subsequent system switching decision.

[0034] Optionally, the above-mentioned decision weight calculation can be multiple, for example, using a dynamic replication matrix to assign a unique weight to each decision scenario result to reflect its importance in the overall decision. By comparing the decision results of the new and old decision engines on the same case set and calculating the weighted difference rate, that is, the decision difference data, the performance and decision accuracy of the new system are evaluated. Weighted difference rate calculation and comparison, first, define the decision result weight array (WeightArray) and assign corresponding weights (w_i) to each decision result. Implement the weighted difference rate calculation function, traverse the decision results of the new and old engines, and accumulate the differences according to the weights for different decision results (WeightedDiff + = w_i*(OldResults[i]! = NewResults[i])). WeightedDiff is the weighted difference value, OldResults[i] is the decision result of the old engine, and NewResults[i] is the decision result of the new engine. Calculate the weighted difference rate: WeightedDiffRate = (WeightedDiff / Sum(WeightArray))*100%, where WeightedDiffRate is the weighted difference rate and Sum(WeightArray) is the sum of weights.

[0035] Optionally, the above-mentioned weight calculation process at least includes: two engines make decisions on the same group of cases (for example, 10 applications), and the results are divided into "approval" and "rejection". In addition, each decision result has a weight, representing the importance of the decision. Old engine decision results (OldResults): [Approve, Approve, Reject, Approve, Reject, Approve, Approve, Reject, Approve, Approve]. New engine decision results (NewResults): [Approve, Reject, Reject, Approve, Reject, Approve, Approve, Approve, Approve]. Weight array (WeightArray): [2,1,3,4,2,1,5,3,2,4]. The calculation steps are as follows:

[0036] (1) Calculate the weight sum (WeightSum): WeightSum=2+1+3+4+2+1+5+3+2+4=27.

[0037] (2) Calculate the weighted difference (WeightedDiff): Traverse each decision result. If the old and new results are different, add the corresponding weight. If the first result is the same (both are "approved"), the weight is not included in the difference. If the second result is different (the old one is "approved" and the new one is "rejected"), the weight is 1 and it is included in the difference, and so on.

[0038] (3) The final weighted difference is: 1+0+0+0+0+0+0+3+0+0=4.

[0039] (4) Calculate the weighted difference rate (WeightedDiffRate): (WeightedDiff / WeightSum)×100%=(4 / 27)×100%≈14.81%.

[0040] If the weighted difference rate (such as 14.81%) meets the preset switching requirements (for example, less than a certain threshold, such as 20%), you can switch to the new engine. If not, you need to adjust the strategy of the new engine or continue to analyze the specific reasons for the high difference rate until a satisfactory difference rate is reached.

[0041] In an optional embodiment, obtaining a decision weight value corresponding to a deviation state includes: obtaining historical decision results of a predetermined strategy scenario in a historical time period, and historical feedback data obtained by executing the historical decision results; and determining a decision weight value based on the historical decision results and the historical feedback data.

[0042] It can be understood that by analyzing the historical decision results of the predetermined strategy scenario in the historical time period and the historical feedback data generated, the importance of each decision scenario is quantified and the decision weight value is determined. The acquisition of the decision weight value is based on the in-depth analysis of historical data, which ensures the rationality and effectiveness of the weight allocation. The method of determining the decision weight value based on historical decision results and historical feedback data can more accurately reflect the real influence of the decision scenario in the business, and provide a basis for the comprehensive evaluation of the performance of the new system.

[0043] Step S106, according to the decision difference data, the target data in the predetermined strategy scenario is migrated from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data.

[0044] It can be understood that according to the decision difference data, the target data under the predetermined strategy scenario is gradually migrated from the initial decision engine to the target decision engine for decision processing. The target decision result is effective for the migrated target data. A smooth transition of decision migration between the old and new engines is achieved, ensuring that the new system can seamlessly take over the business decision-making tasks after fully verifying its performance and decision consistency.

[0045] In an optional embodiment, according to the decision difference data, the target data in the predetermined strategy scenario is migrated from the initial decision engine to the target decision engine for decision processing, including: determining the target time for the target decision engine to meet the decision difference data less than the predetermined difference threshold; when the target time is greater than the predetermined time threshold, changing the traffic path of the target data from being sent to the initial decision engine to being sent to the target decision engine; migrating from the initial decision engine to the target decision engine to perform decision processing on the target data.

[0046] It can be understood that when the decision difference data displayed by the target decision engine when processing the target data continues to be lower than the preset difference threshold for a certain target time, and the target time is longer than the system preset time threshold, the system will change the traffic path of the target data from the initial decision engine to the target decision engine for decision processing. This ensures that the new system will officially take over business decisions only after it has been fully verified and is running stably, thereby avoiding business risks caused by the switching of decision engines.

[0047] In an optional embodiment, after migrating from the initial decision engine to the target decision engine for decision processing, the method also includes: in the event of an abnormality in the target decision engine, changing the traffic path of the target data from being sent to the target decision engine to being sent to the initial decision engine; and rolling back from the target decision engine to the initial decision engine to perform decision processing on the target data.

[0048] It can be understood that the decision engine rollback method is introduced, that is, when an abnormality occurs in the target decision engine, the system can automatically or manually switch the traffic path of the target data back to the initial decision engine to ensure that the continuity and stability of the business are not affected. By monitoring the operating status of the new system in real time, once an abnormality is found, such as decision delays, increased error rates, etc., the traffic path can be adjusted quickly. The decision engine rollback method significantly enhances the robustness and fault tolerance of the system. By switching the decision engine in time, the system can maintain and adjust the new system without affecting the normal operation of the business, avoiding business interruptions or decision errors caused by technical failures.

[0049] In an optional embodiment, the method also includes: determining the decision response time and decision error rate of the target decision engine; determining the stability score of the target decision engine based on the decision response time and the decision error rate; and determining that there is an abnormality in the target decision when the stability score is less than a predetermined abnormality threshold.

[0050] It can be understood that the stability score of the new system is determined by monitoring and analyzing the two key indicators of decision response time and decision error rate. The decision response time reflects the speed at which the new system processes decision requests, while the decision error rate is directly related to the accuracy of the system's decisions. By continuously collecting this data, the stability score is used to determine whether the new system is operating normally. Once the stability score is lower than the preset abnormal threshold, it indicates that there is a performance problem in the new system. The system can immediately start the rollback mechanism to ensure that the stability and accuracy of business decisions are not affected, improve the controllability of the system switching process, make the technology upgrade more stable and safe, and ensure business continuity while continuously optimizing the performance and decision quality of the decision engine.

[0051] Optionally, the above stability score can be calculated in a variety of ways. For example, based on the two key performance indicators of decision response time and decision error rate, the decision response time evaluation is to calculate the average response time of the target decision engine when processing decision requests. Determine an ideal response time threshold, such as 100 milliseconds. Design a response time scoring function, for example: if the response time is within the ideal threshold, the score is 100 points; if it exceeds the threshold, the score is reduced linearly or exponentially according to the degree of excess. Decision error rate evaluation is to calculate the ratio of errors in the decision process of the target decision engine. Determine an acceptable error rate threshold, such as 0.5%. Design an error rate scoring function, for example: if the error rate is lower than the threshold, the score is 100 points; if it exceeds the threshold, the score is reduced according to the excess ratio. The two scores based on response time and decision error rate are combined, and the weighted average can be used. The weight reflects the relative importance of different indicators in the overall stability. Set a threshold for the comprehensive stability score to determine whether the target decision engine is stable. If the comprehensive stability score is lower than the preset threshold, it means that the target decision engine is abnormal or unstable, and measures need to be taken to adjust or roll back to the old system.

[0052] Through the above step S102, the initial decision engine and the target decision engine are used to make decisions on the initial data in the predetermined strategy scenario in parallel, and the initial decision result of the initial decision engine and the target decision result of the target decision engine are obtained, wherein the initial decision result is effective for the initial data; step S104, based on the initial decision result and the target decision result, the decision difference data is determined; step S106, according to the decision difference data, the target data in the predetermined strategy scenario is migrated from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data. The purpose of ensuring business continuity can be achieved, and the technical effect of improving the accuracy of decisions after strategy migration is achieved, thereby solving the technical problem that the old and new decision engines in the related technology have unsatisfactory decision accuracy after strategy migration.

[0053] Based on the above embodiments and optional embodiments, the present invention proposes an optional implementation mode: Figure 2 is a first schematic diagram of an optional decision engine migration method provided according to an embodiment of the present invention, and the specific implementation steps are as follows Figure 2 shown.

[0054] Step S1, initialization and configuration stage;

[0055] System initialization: Initialize the total control bit of the migration replication matrix to the off state (TotalSwitch=0), TotalSwitc is the total control switch, and 0 represents the off state.

[0056] Policy scenario configuration: Configure the policy scenario list and set the traffic routing control bit (a_b_mode) for each scenario, where the a bit (TrafficReplicationFlag) and the b bit (DecisionEffectiveFlag) are initialized to 0. TrafficReplicationFlag is the traffic replication flag, which is the control bit for each policy scenario and is used to decide whether to route traffic to the new engine for replication processing. DecisionEffectiveFlag is the decision effectiveness flag, which is also set for each policy scenario and is used to decide whether to use the decision result of the new engine or the old engine.

[0057] Step S2, dynamic traffic replication phase, dynamic traffic replication is enabled, and is enabled independently according to a single scenario;

[0058] Traffic routing control: Dynamically route traffic to the new engine for replication based on the TrafficReplicationFlag in the migration replication matrix.

[0059] Parallel processing architecture: Design and implement a parallel processing architecture for the new and old engines to ensure that both receive and process traffic at the same time, but the decision results of the new engine are only used for data comparison and verification.

[0060] Step S3, weighted difference rate calculation and comparison stage;

[0061] Decision data collection: Design and implement a data collection mechanism to collect decision result data of new and old engines during the traffic replication phase.

[0062] Implementation of weighted difference rate algorithm: define the decision result weight array (WeightArray) and assign corresponding weights (w_i) to each decision result.

[0063] Implement the weighted difference rate calculation function, traverse the decision results of the new and old engines, and accumulate the differences of different decision results according to the weights (WeightedDiff += w_i*(OldResults[i]!=NewResults[i])).

[0064] Calculate the weighted difference rate: WeightedDiffRate = (WeightedDiff / Sum(WeightArray))*100%.

[0065] Gap Analysis: Perform gap analysis based on weighted gap ratios to identify potential issues and optimize the new engine.

[0066] Use a dynamic replication matrix to assign a unique weight to each decision scenario result to reflect its importance in the overall decision. By comparing the decision results of the new and old decision engines on the same set of cases and calculating the weighted difference rate, i.e., decision difference data, the performance and decision accuracy of the new system are evaluated. The weighted difference rate algorithm is to accurately evaluate the difference in decision results between the new and old engines by defining the decision result weight array (WeightArray) and the weighted difference rate calculation function.

[0067] WeightedDiff is the weighted difference value, OldResults[i] is the old engine decision result, NewResults[i] is the new engine decision result. WeightedDiffRate is the weighted difference rate, and Sum(WeightArray) is the weighted sum.

[0068] Optionally, the above-mentioned weight calculation process at least includes: two engines make decisions on the same group of cases (for example, 10 applications), and the results are divided into "approval" and "rejection". In addition, each decision result has a weight, representing the importance of the decision. Old engine decision results (OldResults): [Approve, Approve, Reject, Approve, Reject, Approve, Approve, Reject, Approve, Approve]. New engine decision results (NewResults): [Approve, Reject, Reject, Approve, Reject, Approve, Approve, Approve, Approve]. Weight array (WeightArray): [2,1,3,4,2,1,5,3,2,4]. The calculation steps are as follows:

[0069] (1) Calculate the weight sum (WeightSum): WeightSum=2+1+3+4+2+1+5+3+2+4=27.

[0070] (2) Calculate the weighted difference (WeightedDiff): Traverse each decision result. If the old and new results are different, add the corresponding weight. If the first result is the same (both are "approved"), the weight is not included in the difference. If the second result is different (the old one is "approved" and the new one is "rejected"), the weight is 1 and it is included in the difference, and so on.

[0071] (3) The final weighted difference is: 1+0+0+0+0+0+0+3+0+0=4.

[0072] (4) Calculate the weighted difference rate (WeightedDiffRate): (WeightedDiff / WeightSum)×100%=(4 / 27)×100%≈14.81%.

[0073] If the weighted difference rate (such as 14.81%) meets the preset switching requirements (for example, less than a certain threshold, such as 20%), you can switch to the new engine. If not, you need to adjust the strategy of the new engine or continue to analyze the specific reasons for the high difference rate until a satisfactory difference rate is reached.

[0074] Step S4, decision result switching stage, analyze according to the above difference rate, if the difference rate requirement is met, switch the decision result of the current scene to the new one;

[0075] Switching control logic: Implement the decision result switching control logic, set the DecisionEffectiveFlag of the verified strategy scenario to 1, and make the decision result of the new engine take effect.

[0076] Monitoring and alarm: Design and implement a monitoring mechanism to continuously monitor the performance indicators of the new engine, such as response time, success rate, etc., and set alarm thresholds to ensure the stability of the new engine.

[0077] Rollback mechanism: Implement a fast rollback mechanism. When a problem occurs with the new engine, the DecisionEffectiveFlag can be quickly switched back to 0, and the decision result using the old engine can be rolled back.

[0078] The decision result switching process is as follows: modeln represents the nth policy scenario. The DecisionEffectiveFlag of the policy scenario that has passed the modeln verification is set to 1 (i.e., 1_1_modeln, indicating that the traffic under the nth policy scenario will be sent to the new and old engines at the same time, but the decision is based on the result of the new engine, and the decision result of the old engine is only used for replication and monitoring). If a problem occurs, DecisionEffectiveFlag is set to 0 (i.e., 0_0_modeln, the decision is based on the old engine and replication is closed, and the decision result of the new engine is not effective. Complete the migration and shut down replication: Set all model single configuration TrafficReplicationFlag to 0 to stop replicating traffic decisions based on the new engine. Table 1 is a schematic diagram of the decision replication routing matrix; as shown in Table 1, the decision replication routing switch matrix. Dynamic traffic replication matrix: The dynamic replication of traffic and flexible switching of decision results are achieved through the traffic routing control bit (a_b_mode). In a specific policy scenario, such as model1, TotalSwitch = 0, 0_0 means that in model1, the traffic routing control bit (TrafficReplicationFlag) is set to 0. eplicationFlag) and the decision result validity bit (DecisionEffectiveFlag) are both set to 0. Specifically, TrafficReplicationFlag = 0, the traffic is not copied to the new decision engine for processing, the new engine does not receive any actual business traffic, and only the old engine is performing decision processing. DecisionEffectiveFlag = 0, even if the new decision engine receives the traffic (when TrafficReplicationFlag = 1), its decision result will not take effect, and the system still uses the decision result of the old decision engine. The √ symbol indicates "correct" or "verification passed". x indicates "wrong" or "verification failed". The same applies to other predetermined policy scenarios and will not be repeated.

[0079] Table 1

[0080]

[0081] The decision engine rollback method is introduced. That is, when an abnormality occurs in the target decision engine, the system can automatically or manually switch the traffic path of the target data back to the initial decision engine to ensure that the continuity and stability of the business are not affected. By monitoring the operating status of the new system in real time, once an abnormality is found, such as decision delays, increased error rates, etc., the traffic path can be quickly adjusted. The decision engine rollback method significantly enhances the robustness and fault tolerance of the system. By switching the decision engine in time, the system can maintain and adjust the new system without affecting the normal operation of the business, avoiding business interruptions or decision errors caused by technical failures.

[0082] The stability score of the new system is determined by monitoring and analyzing two key indicators: decision response time and decision error rate. Decision response time reflects the speed at which the new system processes decision requests, while the decision error rate is directly related to the accuracy of the system's decisions. By continuously collecting this data, the stability score is used to determine whether the new system is operating normally. Once the stability score is lower than the preset abnormal threshold, it indicates that there is a performance problem in the new system. The system can immediately start the rollback mechanism to ensure that the stability and accuracy of business decisions are not affected, improve the controllability of the system switching process, make technology upgrades more stable and safe, and ensure business continuity while continuously optimizing the performance and decision quality of the decision engine.

[0083] Step S5, migration completion stage, if after a certain window period, the comparison between the new and old still meets the requirements, and the new decision engine runs stably in this scenario, the replication is closed and the new decision engine is used as the main one.

[0084] Traffic replication termination: After all policy scenarios are successfully switched to the new engine, the migration replication matrix is ​​traversed, and TrafficReplicationFlag is set to 0 to terminate traffic replication.

[0085] Migration confirmation: Confirm the completion of the migration process through system logs or notification mechanisms, and notify relevant technical personnel.

[0086] The above optional implementation methods achieve at least the following effects: dynamic routing matrix lossless cutover and switch mode design make the migration process more flexible and controllable, and the migration progress can be adjusted at any time (lossless business) and on demand (breaking the whole into parts) as needed, thereby improving the overall processing efficiency; by calculating the difference rate in a single scenario, the accuracy and stability of the new engine can be evaluated more accurately, providing a basis for decision-making results switching; dynamic traffic replication allows migration without affecting business continuity, and real-time comparison ensures the accuracy of the new engine; by gradually increasing the weight of the new system, a smooth transition between the old and new systems is achieved, reducing business interruptions and uncertainties caused by migration.

[0087] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0088] In this embodiment, a decision engine migration device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the terms "module" and "device" can implement a combination of software and / or hardware for a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0089] According to an embodiment of the present invention, there is also provided an apparatus embodiment for implementing the decision engine migration method. Figure 3 is a schematic diagram of a decision engine migration device according to an embodiment of the present invention. Figure 3 As shown, the above-mentioned decision engine migration device includes a decision result acquisition module 302, a difference data determination module 304, and a decision result processing module 306. The device is described below.

[0090] The decision result acquisition module 302 is used to use the initial decision engine and the target decision engine to make decisions on the initial data in the predetermined strategy scenario in parallel, and obtain the initial decision result of the initial decision engine and the target decision result of the target decision engine, wherein the initial decision result is effective for the initial data;

[0091] The difference data determination module 304 is connected to the decision result acquisition module 302 and is used to determine the decision difference data based on the initial decision result and the target decision result;

[0092] The decision result processing module 306 is connected to the difference data determination module 304, and is used to migrate the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing according to the decision difference data, wherein the target decision result is effective for the migrated target data.

[0093] In a decision engine migration device provided by an embodiment of the present invention, a decision result acquisition module 302 is set to use an initial decision engine and a target decision engine to make decisions on initial data in a predetermined policy scenario in parallel, thereby obtaining an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; a difference data determination module 304 is connected to the decision result acquisition module 302, and is used to determine decision difference data based on the initial decision result and the target decision result; a decision result processing module 306 is connected to the difference data determination module 304, and is used to migrate the target data in the predetermined policy scenario from the initial decision engine to the target decision engine for decision processing according to the decision difference data, wherein the target decision result is effective for the migrated target data. The purpose of ensuring business continuity is achieved, and the technical effect of improving the accuracy of decisions after policy migration is achieved, thereby solving the technical problem of unsatisfactory decision accuracy of the new and old decision engines after policy migration existing in the related art.

[0094] It should be noted that the above modules can be implemented by software or hardware. For example, for the latter, it can be implemented in the following ways: the above modules can be located in the same processor; or the above modules can be located in different processors in any combination.

[0095] It should be noted that the above-mentioned acquisition decision result module 302, determination difference data module 304, and processing decision result module 306 correspond to steps S102 to S106 in the embodiment, and the examples and application scenarios implemented by the above-mentioned modules and corresponding steps are the same, but are not limited to the contents disclosed in the above-mentioned embodiment. It should be noted that the above-mentioned modules as part of the device can be run in a computer terminal.

[0096] It should be noted that the optional or preferred implementation of this embodiment can refer to the relevant description in the embodiment, which will not be repeated here.

[0097] The above-mentioned decision engine migration device may also include a processor and a memory. The decision result acquisition module 302, the difference data determination module 304, the decision result processing module 306, etc. are all stored in the memory as program units, and the processor executes the above-mentioned program units stored in the memory to realize the corresponding functions.

[0098] The processor includes a kernel, which retrieves the corresponding program unit from the memory. There can be one or more kernels. The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one storage chip.

[0099] An embodiment of the present invention provides a non-volatile storage medium on which a program is stored. When the program is executed by a processor, a decision engine migration method is implemented.

[0100] An embodiment of the present invention provides an electronic device, which includes a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, the following steps are implemented: using an initial decision engine and a target decision engine to make decisions on initial data in a predetermined strategy scenario in parallel, obtaining an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; determining decision difference data based on the initial decision result and the target decision result; according to the decision difference data, migrating the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data. The device in this article may be a server, a PC, etc.

[0101] The present invention also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program having the following method steps: using an initial decision engine and a target decision engine to make decisions on initial data in a predetermined strategy scenario in parallel, obtaining an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; determining decision difference data based on the initial decision result and the target decision result; and according to the decision difference data, migrating the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data.

[0102] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0103] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0104] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0105] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0106] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0107] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0108] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0109] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0110] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0111] The above are only embodiments of the present invention and are not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent substitution, improvement, etc. made within the spirit and principle of the present invention should be included in the scope of the claims of the present invention.

Claims

1. A decision engine migration method, characterized in that: include: Using an initial decision engine and a target decision engine to make decisions on initial data in a predetermined strategy scenario in parallel, obtaining an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; Determining decision difference data based on the initial decision result and the target decision result; According to the decision difference data, the target data in the predetermined strategy scenario is migrated from the initial decision engine to the target decision engine for decision processing, wherein the target decision result is effective for the migrated target data.

2. The method according to claim 1, characterized in that The method further comprises: When there are multiple predetermined strategy scenarios, respectively set flow control switches for the multiple predetermined strategy scenarios; According to the migration requirements, adjusting the switch states of the flow control switches respectively corresponding to the plurality of predetermined strategy scenarios; The target data in the predetermined strategy scenario corresponding to the switch state being on is sent to the target decision engine for decision processing.

3. The method according to claim 1, characterized in that The determining of decision difference data based on the initial decision result and the target decision result includes: For the initial data, determining a deviation state between the initial decision result and the target decision result; Obtaining a decision weight value corresponding to the deviation state; The decision difference data is determined according to the deviation state and the decision weight value.

4. The method according to claim 3, characterized in that The obtaining the decision weight value corresponding to the deviation state includes: Obtaining historical decision results of the predetermined strategy scenario in a historical time period, and historical feedback data obtained by executing the historical decision results; The decision weight value is determined based on the historical decision results and the historical feedback data.

5. The method according to claim 1, characterized in that The step of migrating the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing according to the decision difference data includes: Determine the target time duration for the target decision engine to satisfy the requirement that the decision difference data is less than a predetermined difference threshold; When the target duration is greater than a predetermined duration threshold, changing the traffic path of the target data from being sent to the initial decision engine to being sent to the target decision engine; The initial decision engine is migrated to the target decision engine to perform decision processing on the target data.

6. The method according to any one of claims 1 to 5, characterized in that After the initial decision engine is migrated to the target decision engine for decision processing, the method further includes: In the case that the target decision engine has an abnormality, changing the traffic path of the target data from being sent to the target decision engine to being sent to the initial decision engine; The target decision engine rolls back to the initial decision engine to perform decision processing on the target data.

7. The method according to claim 6, characterized in that The method further comprises: Determining the decision response time and decision error rate of the target decision engine; Determining a stability score of the target decision engine based on the decision response time and the decision error rate; When the stability score is less than a predetermined abnormality threshold, it is determined that an abnormality exists in the target decision.

8. A decision engine migration device, characterized in that: include: A decision result acquisition module is used to use an initial decision engine and a target decision engine to make decisions on the initial data in a predetermined strategy scenario in parallel, and obtain an initial decision result of the initial decision engine and a target decision result of the target decision engine, wherein the initial decision result is effective for the initial data; A difference data determination module, used to determine decision difference data based on the initial decision result and the target decision result; A decision result processing module is used to migrate the target data in the predetermined strategy scenario from the initial decision engine to the target decision engine for decision processing according to the decision difference data, wherein the target decision result is effective for the migrated target data.

9. A non-volatile storage medium, characterized in that: The non-volatile storage medium stores a plurality of instructions, and the instructions are suitable for being loaded by a processor and executing the decision engine migration method described in any one of claims 1 to 7.

10. An electronic device, characterized in that: include: One or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the decision engine migration method described in any one of claims 1 to 7.