Project processing method and apparatus

By introducing a penalty function to adjust the performance score and evaluation index of the target parameters, the problem of existing technologies being unable to meet the constraints of multi-objective parameter tuning is solved, enabling flexible parameter tuning to meet the needs of different projects and improving project processing performance and user experience.

CN114153707BActive Publication Date: 2026-05-19ALIBABA CLOUD COMPUTING CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ALIBABA CLOUD COMPUTING CO LTD
Filing Date
2021-10-22
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

Existing technologies cannot effectively achieve performance tuning under constraints in multi-objective parameter tuning, and cannot meet users' diverse needs for project processing performance.

Method used

Penalty functions are introduced to restrict or unrestrict target parameters. By adjusting the performance scoring function and evaluation index of the target parameters through penalty functions, different project requirements can be met.

Benefits of technology

It enables flexible control over both restricted and unrestricted conditions in multi-objective optimization, meeting the parameter optimization needs under single-objective, multi-objective, and restricted conditions, thereby improving project processing performance and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114153707B_ABST
    Figure CN114153707B_ABST
Patent Text Reader

Abstract

Embodiments of the present specification provide a project processing method and device, wherein the project processing method comprises: determining a parameter condition of a target parameter in a to-be-processed project according to a project requirement of the to-be-processed project; determining a penalty function corresponding to the target parameter based on the parameter condition, and calculating a performance score function of the target parameter in the to-be-processed project; determining an evaluation index of the target parameter based on the penalty function corresponding to the target parameter and the performance score function; and in a case where the evaluation index meets the project requirement, adjusting the to-be-processed project based on the target parameter.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments in this specification relate to the field of computer technology, and in particular to a project processing method. Background Technology

[0002] In the server field, there are high requirements for project processing performance and user experience. Currently, to improve project processing performance and user experience, it is usually necessary to improve the overall performance of the server, which involves optimizing system parameters. The common approach to multi-objective parameter tuning is to generate a final evaluation index based on the performance weight of each parameter, using this index to score the execution results of each set of parameters and thus find the best-performing set. However, this method cannot strictly limit one or more parameters, nor can it achieve the desired project processing performance, thus failing to meet user needs. Summary of the Invention

[0003] In view of this, embodiments of this specification provide a project processing method. One or more embodiments of this specification also relate to a project processing apparatus, a computing device, a computer-readable storage medium, and a computer program to address technical deficiencies in the prior art.

[0004] According to a first aspect of the embodiments of this specification, a project processing method is provided, comprising:

[0005] Determine the parameter conditions of the target parameters in the project to be processed based on the project requirements;

[0006] Based on the parameter conditions, determine the penalty function corresponding to the target parameter, and calculate the performance score function of the target parameter in the project to be processed;

[0007] The evaluation index of the target parameter is determined based on the penalty function corresponding to the target parameter and the performance scoring function;

[0008] If the evaluation indicators meet the project requirements, the project to be processed is adjusted based on the target parameters.

[0009] According to a second aspect of the embodiments of this specification, a project processing apparatus is provided, comprising:

[0010] The condition determination module is configured to determine the parameter conditions of the target parameters in the project to be processed based on the project requirements of the project to be processed.

[0011] The function determination module is configured to determine the penalty function corresponding to the target parameter based on the parameter conditions, and to calculate the performance score function of the target parameter in the project to be processed;

[0012] The indicator determination module is configured to determine the evaluation indicator of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function;

[0013] The parameter adjustment module is configured to adjust the project to be processed based on the target parameters, provided that the evaluation indicators meet the project requirements.

[0014] According to a third aspect of the embodiments of this specification, a computing device is provided, comprising:

[0015] Memory and processor;

[0016] The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions, wherein the processor executes the computer-executable instructions to implement the steps of the project processing method.

[0017] According to a fourth aspect of the embodiments of this specification, a computer-readable storage medium is provided that stores computer-executable instructions, which, when executed by a processor, implement the steps of any of the described item processing methods.

[0018] According to a fifth aspect of the embodiments of this specification, a computer program is provided, wherein when the computer program is executed in a computer, it causes the computer to perform the steps of the above-described item processing method.

[0019] One embodiment of this specification involves determining the parameter conditions of a target parameter in the project to be processed based on the project requirements; determining the penalty function corresponding to the target parameter based on the parameter conditions, and calculating the performance score function of the target parameter in the project to be processed; determining the evaluation index of the target parameter based on the penalty function and the performance score function; and adjusting the project to be processed based on the target parameter if the evaluation index meets the project requirements.

[0020] Specifically, the parameter conditions of the target parameters in the project to be processed are determined by the project requirements, and the penalty function corresponding to the parameter conditions is determined. By introducing the penalty function, the target parameters can be restricted or unrestricted. The evaluation index of the processing performance of the target parameters in the project to be processed is determined. Then, based on the evaluation index, it is determined whether the project requirements are met. Based on the target parameters that meet the project requirements, the project to be processed is adjusted to achieve the processing performance corresponding to the target parameters, while also meeting the user's project requirements for the project to be processed. Attached Figure Description

[0021] Figure 1 This is a flowchart illustrating a project processing method provided in one embodiment of this specification;

[0022] Figure 2 This is a flowchart illustrating the process of a project processing method provided in one embodiment of this specification.

[0023] Figure 3 This is a schematic diagram of the structure of a project processing device provided in one embodiment of this specification;

[0024] Figure 4 This is a structural block diagram of a computing device provided in one embodiment of this specification. Detailed Implementation

[0025] Many specific details are set forth in the following description to provide a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this specification. Therefore, this specification is not limited to the specific implementations disclosed below.

[0026] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of this specification. The singular forms “a,” “described,” and “the” as used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more associated listed items.

[0027] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this specification, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."

[0028] First, the terms and concepts used in one or more embodiments of this specification will be explained.

[0029] Parameter tuning: The process of adjusting system parameters to continuously improve the system's score on a benchmark program. This system can be an operating system kernel or the training process for a machine learning program.

[0030] Multi-objective tuning: Multi-objective optimization is a field of multi-criteria decision making. It is a mathematical problem involving the simultaneous optimization of multiple objective functions.

[0031] Evaluation metrics: Evaluation metrics are quantitative indicators that measure the quality of an algorithm or parameter when the same data is input into different algorithm models or the same algorithm model is input with different parameters.

[0032] Penalty function (loss function): When solving optimization problems (unconstrained optimization and nonlinear optimization), a penalty function is added to the original objective function to obtain an augmented objective function. The function of the penalty function is to assign a maximum value to infeasible points or points that attempt to cross the boundary and escape the feasible region, that is, to transform a constrained optimization problem into an unconstrained optimization problem.

[0033] During performance tuning of project environment parameters, various performance requirements will arise. However, the server's implementation of these requirements may not be entirely accurate for each individual requirement. For example, when tuning network applications, observable performance metrics include: QPS (Query Per Second, the number of requests processed per minute), Throuput (Mb / s, the amount of data transmitted per second), AvgLat (average network latency), 95Lat (95th percentile latency), and 99Lat (99th percentile latency). Different projects will have different tuning requirements.

[0034] Requirement A (Single-objective tuning): Tuning only QPS, the higher the better, and a decrease in other metrics is acceptable.

[0035] Requirement B (General Multi-Objective Tuning): Simultaneously tune QPS and latency (AvgLat and 99Lat), with a greater focus on improving QPS.

[0036] Requirement C (Multi-objective tuning with constraints): Tune the QPS while strictly requiring no increase in latency (AvgLat). Under constraints, the higher the QPS, the better.

[0037] To address the aforementioned needs, existing multi-objective parameter tuning methods in the industry generally involve normalizing each indicator and then generating a final evaluation index according to its respective weight. This index is used to score the execution results of each set of parameters, thereby finding the set of parameters with better results.

[0038] Normalization methods typically employ either the arithmetic mean (ArtMeab) or the geometric mean (GeoMean). When the values ​​of different indicators vary significantly, the geometric mean provides better normalization.

[0039] This manual describes the operation of the above-mentioned general tuning methods, mainly focusing on the evaluation metrics and the final expression of the loss function (Loss):

[0040] For the solution to requirement A: basic single-objective optimization directly uses the target index as the evaluation index to judge whether the generated parameter combination is good or bad, thereby guiding the algorithm to find an algorithm combination with better optimization effect.

[0041] The evaluation indicators can be found in the following formula (1):

[0042] Evaluation index = QPS * 100% (1)

[0043] In the example above, the algorithm for requirement A can be expressed as follows (2):

[0044] argmax x F(x)=QPS(x),x∈configuration (2)

[0045] The solution for requirement B is a basic multi-objective optimization. After normalizing the relevant indicators, an evaluation index is generated. The generated parameter combination is judged as good or bad, thereby guiding the algorithm to find an algorithm combination with better optimization effect.

[0046] In the example above, the evaluation indicators can be found in the following formula (3):

[0047] QPS' = GeoMean(QPS)

[0048] AvgLat' = GeoMean(AvgLat)

[0049] 99Lat' = GeoMean(99Lat)

[0050] Evaluation index = QPS' * 80% + AvgLat' * 15% + 99Lat' * 5% (3)

[0051] In the example above, the algorithm for requirement B can be expressed as follows (4):

[0052] argmax x F(x)=QPS'(x)*80 / 100+AvgLat′*15 / 100+99Lat'*5 / 100,x∈configuration (4)

[0053] Current multi-objective tuning methods optimize for certain conditions of requirements A and B using the aforementioned algorithms, but they cannot optimize other indicators for requirement C, i.e., under strict constraints. Furthermore, no algorithm in the industry can simultaneously support requirement management for requirements A, B, and C; therefore, there is an urgent need for an algorithm capable of tuning multi-objective parameters under both strict and normal conditions.

[0054] Based on this, the project processing method provided in the embodiments of this specification proposes a multi-objective tuning method that allows for free control of restricted / unrestricted conditions, mainly by introducing a penalty function. The penalty function is a multi-segment function. For an indicator where performance needs to be restricted from degrading, the penalty function is a first-order function when the indicator does not degrade; when the indicator degrades, the penalty function will be a maximum value, thus excluding that point from the candidate range. By introducing a multi-segment penalty function, a unified algorithm is provided that enables simple control over restricted / unrestricted conditions, allowing for rapid switching between conditional and unrestricted multi-objective tuning, thus meeting different parameter tuning needs.

[0055] This specification provides a project processing method, and also relates to a project processing apparatus, a computing device, a computer-readable storage medium, and a computer program, which will be described in detail in the following embodiments.

[0056] Figure 1 A flowchart of a project processing method according to an embodiment of this specification is shown, which specifically includes the following steps.

[0057] Step 102: Determine the parameter conditions of the target parameters in the project to be processed based on the project requirements of the project to be processed.

[0058] The "projects to be processed" can be understood as projects that require parameter tuning, such as network tuning projects, device parameter tuning projects, etc. In this manual, we take the network tuning project as an example to introduce the project processing method in detail, but we do not impose any restrictions on the application scenarios of the project processing method.

[0059] Project requirements can be understood as the target performance requirements for the project to be processed. For example, in network optimization projects, there are single-objective optimization requirements for parameter adjustment (only optimizing QPS, the higher the QPS performance, the better, and a decrease in other indicators is acceptable), general multi-objective optimization requirements (optimizing both QPS and latency simultaneously, with a greater focus on improving QPS performance), and multi-objective optimization requirements with restrictions (optimizing QPS without increasing latency, the higher the QPS, the better), etc. This embodiment does not impose any restrictions on project requirements.

[0060] Target parameters can be understood as parameters that need to be adjusted in network tuning projects, such as latency, QPS, and data throughput. It should be noted that the target parameters may vary depending on the specific project being addressed.

[0061] Parameter conditions can be understood as restrictive or unrestrictive conditions for adjusting target parameters based on project requirements. For example, QPS performance may increase, but other parameters may be unrestricted; QPS and latency performance may increase, but QPS performance may be more important; latency may be restricted from increasing, but QPS performance may increase. Specific parameter conditions can be determined according to different projects to be processed.

[0062] In practical applications, after receiving the user's project requirements for a project to be processed, the server can determine which parameters in the project can be adjusted. After optimizing the target parameters according to the project requirements, the project can not only meet the user's requirements but also improve the overall application performance. In specific implementation, the server can determine the parameter conditions of the target parameters in the project based on the project requirements. For example, if the server determines that the project to be processed is a network optimization project and the project requirement is requirement C mentioned in this specification, namely, the multi-objective optimization requirement with constraints (the requirement is to optimize QPS without increasing latency, and the higher the QPS, the better), then the server can determine that the target parameters to be adjusted are latency and QPS. Thus, the server can determine that the parameter conditions of the target parameters in the network optimization project are to limit the increase of latency and increase the performance index of QPS.

[0063] Furthermore, project requirements can be divided into two categories: restricted parameter requirements and unrestricted parameter requirements. It's important to emphasize that these two categories apply to the specific needs of different users for the projects they are working on. This can be understood as follows: during parameter tuning, if only improving the performance of one parameter is considered, it may lead to a decrease in the performance of other parameters. This situation can be considered an unrestricted requirement. Conversely, if not only is the improvement of one parameter considered, but also strict restrictions can be placed on parameters that are of particular concern to users in practical applications, this situation can be considered a restricted requirement. This embodiment will provide a detailed introduction to determining the parameter conditions when the project requirement is a restricted parameter requirement. Specifically, the project requirement is a restricted parameter requirement.

[0064] Accordingly, the parameter conditions for determining the target parameters in the project to be processed based on the project requirements include:

[0065] Based on the constraint parameter requirements of the project to be processed, the constraint parameters are determined from the target parameters of the project to be processed;

[0066] Based on the aforementioned limiting parameter requirements, determine the parameter conditions for the limiting parameters in the project to be processed.

[0067] Among them, the limiting parameters can be understood as the parameters that are restricted in order to achieve the project requirements.

[0068] In practice, the server can determine the limiting parameters in the target parameters of the project to be processed based on the limiting parameter requirements, and determine the parameter conditions of the limiting parameter based on the limitation content of the limiting parameter requirements. Continuing with the previous example, after determining that the limiting parameter requirement of the network optimization project is to limit the latency without increasing it, and then optimizing QPS, with higher QPS being better, the limiting parameter can be determined from the target parameter of latency and QPS, and the parameter condition of latency can be determined as the latency performance index change value Q≤0.

[0069] The project processing method provided in the embodiments of this specification, when it is determined that the project optimization requirement is a constraint parameter requirement, determines the constraint parameter in the constraint parameter requirement and determines the parameter condition corresponding to the constraint parameter. This facilitates the subsequent introduction of the corresponding penalty function based on the parameter condition to realize the restriction adjustment of the constraint parameter, thereby realizing the optimization processing of the constraint parameter of the project to be processed.

[0070] Step 104: Determine the penalty function corresponding to the target parameter based on the parameter conditions, and calculate the performance score function of the target parameter in the project to be processed.

[0071] In this context, the penalty function refers to adding a barrier function to the original objective function when solving a relative optimization problem (without linear constraints or nonlinear constraints), resulting in an augmented objective function. The function of the penalty function is to assign a maximum value to infeasible points or points that attempt to cross the boundary and escape the feasible region, thus transforming a constrained relative optimization problem into a problem of solving an unconstrained relative optimization problem.

[0072] The specific implementation rules for the penalty function are as follows:

[0073] (1) Quadratic penalty function for equality constraints

[0074] For the optimization problem, see formula (5):

[0075] min x f(x), stc i (x)=0 (5)

[0076] The quadratic penalty function is given by the following formula (6):

[0077]

[0078] (2) Quadratic penalty function for equality constraints

[0079] For the optimization problem, see Equation (7):

[0080] minf(x), stc i (x)≤0 (7)

[0081] The quadratic penalty function is given by the following formula (8):

[0082]

[0083]

[0084] For requirement C mentioned in this embodiment, it is required that a "quadratic penalty function with inequality constraints" can be used if certain indicators do not decrease. That is, an inverse function is added to the multi-objective evaluation indicators to achieve a specific solution for requirement C.

[0085] For example, the constraint is that the latency cannot be increased (AvgLat, 95Lat, and 99Lat cannot be increased), which corresponds to formula (8):

[0086] stc i (x) = AvgLat(x) base -AvgLat≤0 (9)

[0088] Tuning objective: To optimize QPS, the higher the QPS, the better, see formula (10):

[0089] The original evaluation metric = QPS * 100% + loss_function(10)

[0090] In this example, the objective of solving requirement C is the aforementioned formula (2).

[0091] The solution to the optimal problem using the penalty function is given by the following formula (11):

[0092] maxf(x)=AvgLat(x)base-AvgLat(x)≥0

[0093]

[0094] in

[0095] In summary, the unified evaluation index formula that can simultaneously support requirements A, B, and C provided in this embodiment can be found in formula (12):

[0096] evaluation=argmax(F(x)-Loss(x,σ)),x∈configuration (12)

[0098]

[0099] Therefore, by using the penalty function described above to control the restricted / unrestricted conditions, a unified algorithm can be provided to be applied to different parameter tuning needs.

[0100] In practical applications, after the server determines the penalty function corresponding to the target parameter based on the parameter conditions, it also needs to calculate the performance score function of the target parameter in the entire project to be processed. The performance score function can be understood as the performance score of the target parameter value in the system operation of the current project to be processed. The score function is formed by the performance scores of multiple parameters, which makes it easy to obtain the running performance score of the target parameter by inputting the target parameter later. The specific function formation method is not restricted in this embodiment.

[0101] Furthermore, in the process of introducing the penalty function, how to select a suitable penalty function for the target parameter, and thus select a parameter combination with better performance; specifically, determining the penalty function corresponding to the target parameter based on the parameter conditions includes:

[0102] When the performance difference of the limiting parameter is less than zero based on the parameter conditions, the penalty function of the limiting parameter is determined to be the first target penalty function; or

[0103] When the performance difference of the limiting parameter is greater than or equal to zero based on the parameter conditions, the penalty function of the limiting parameter is determined as the second objective penalty function.

[0104] After determining the general formula for the penalty function, different penalty functions can be selected based on different parameter conditions. In specific implementation, if the server determines that the performance difference of the parameter corresponding to the limiting parameter is less than zero based on the parameter conditions, the penalty function for that limiting parameter should refer to the second segment of the general penalty function; if the server determines that the performance difference of the parameter corresponding to the limiting parameter is greater than or equal to zero based on the parameter conditions, the penalty function for that limiting parameter should refer to the third segment of the penalty function.

[0105] In practical applications, when the limiting parameter is determined to be the delay parameter (avgLat), and the constraint condition in requirement C is that the delay does not increase, i.e., the change value Q of the delay performance index is less than zero, the penalty function corresponding to this delay parameter can be determined using the general penalty function. This penalty function is the second segment of the general function in the above formula (12), that is...

[0106] strict, avglat(x) base -avglat<0

[0107] If the requirement specifies that the delay is increasing, i.e., the change in the delay performance index Q is greater than or equal to zero, the penalty function corresponding to this delay parameter can be determined using the general penalty function mentioned above. This penalty function is the third segment of the general function in formula (12) above, i.e.

[0108] Loss(x,σ)=f(x)strict,avglat(x) base -avglat≥0

[0109] It should be noted that the general penalty function mentioned above is mainly used to adjust the limiting parameters in multi-objective tuning. This embodiment only provides a simple example. The specific implementation method or the penalty function can be flexibly applied in actual application projects. This embodiment does not impose any restrictions on this.

[0110] The project processing method provided in the embodiments of this specification determines different penalty functions corresponding to the limiting parameters through different parameter conditions, which can realize adaptive adjustment of the parameters. Thus, it can not only achieve conditional control of the performance of the limiting parameters, but also achieve performance optimization of multiple objective parameters.

[0111] Furthermore, requirements A and B mentioned in the specification can be categorized as unrestricted parameter requirements, and the corresponding parameter conditions can be determined based on these requirements; specifically, the project requirements are unrestricted parameter requirements.

[0112] Accordingly, the parameter conditions for determining the target parameters in the project to be processed based on the project requirements include:

[0113] Based on the unrestricted parameter requirements of the project to be processed, the parameter conditions of the target parameter in the project to be processed are determined to be empty.

[0114] In practical implementation, when the project requirement is an unrestricted parameter requirement, that is, no parameter in the project to be processed is strictly restricted. For example, in requirement A, only QPS is tuned, and the higher the performance index, the better, while the decline of other indicators is acceptable. In this requirement, there is only the target parameter and no corresponding restrictive parameter. Therefore, this situation is an unrestricted parameter requirement. In the corresponding penalty function mentioned above, according to the unrestricted parameter requirement, it can be determined that the parameter condition of the target parameter is empty.

[0115] In practical applications, when project requirements are unrestricted parameter requirements, it can be understood as a parameter tuning method under unrestricted conditions. Since this specification provides a unified evaluation index formula that supports requirements A, B, and C, the parameter conditions for unrestricted conditions also need to be further determined in order to subsequently determine the penalty function corresponding to the parameter conditions, thereby achieving parameter tuning under unrestricted conditions.

[0116] The project processing method provided in the embodiments of this specification can also determine that the corresponding parameter conditions are empty when the project requirements of the project to be processed are determined to be unrestricted parameter requirements. This makes it easier to determine the corresponding penalty function from multiple penalty functions based on the parameter conditions, so as to achieve the optimization of parameter performance targets.

[0117] Even when the parameter conditions are empty, this embodiment also provides a penalty function under unrestricted conditions, facilitating parameter tuning under unrestricted conditions. Specifically, determining the penalty function corresponding to the target parameter based on the parameter conditions includes:

[0118] If the parameter condition for the target parameter is empty, the penalty function corresponding to the target parameter is determined to be zero based on the parameter condition.

[0119] In practical applications, when the server determines that the parameter condition for the target parameter is empty, the first penalty function corresponding to the target parameter can be determined from the penalty function in the above formula (12):

[0120] Loss(x, σ) = 0 normal

[0121] It should be noted that if the penalty function corresponding to the target parameter is determined to be zero, it means that no restrictions were placed on the target parameter during the optimization process of the project to be processed. Therefore, determining that the penalty function is zero will not affect the determination of the parameter index, and thus the performance index of the target parameter can be determined.

[0122] The project processing method provided in the embodiments of this specification can determine that the corresponding penalty function is zero by using an unrestricted condition where the parameter condition is empty, and thus will not affect the performance of target parameter tuning.

[0123] Step 106: Determine the evaluation index of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function.

[0124] In practical applications, after determining the penalty function corresponding to the target parameter and the performance score function of the target parameter in the project to be processed, the evaluation index corresponding to the target parameter can be determined based on the penalty function and the performance score function.

[0125] Specifically, determining the evaluation index of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function includes:

[0126] Subtract the performance score function of the project to be processed from the penalty function corresponding to the target parameter, and determine the evaluation index of the target parameter based on the result of the subtraction.

[0127] Since the penalty function corresponding to the target parameter is an adjustment penalty function, it strictly restricts the limiting parameter and realizes a restrictive multi-objective parameter tuning process. Therefore, by subtracting the limiting penalty function corresponding to the target parameter from the actual performance index of the target parameter, the actual performance evaluation index of the target parameter can be determined more accurately.

[0128] In practical applications, this embodiment provides a general evaluation index formula (13), namely...

[0129] evaluation=argmax(F(x)-Loss(x,σ)),x∈configuration (13)

[0130] Here, evaluation can represent the value of the evaluation index.

[0131] The project processing method provided in the embodiments of this specification uses a penalty function to adjust the parameter performance score function in the project to be processed, so as to obtain the evaluation index corresponding to the target parameter tuning, and then determine whether the parameter tuning required by the project has been achieved.

[0132] Step 108: If the evaluation indicators meet the project requirements, adjust the project to be processed based on the target parameters.

[0133] In practice, once the evaluation indicators meet the corresponding project requirements, it can be determined that the parameter value corresponding to the target parameter can meet the project requirements and achieve the goal of parameter optimization. Then, the project to be processed can be adjusted based on the target parameter.

[0134] It should be noted that the target parameter tuning process provided in the embodiments of this specification can be understood as a process of judging the evaluation index of a set of parameter values ​​in the project to be processed, judging whether the performance of the set of parameter values ​​in the project to be processed can meet the preset project requirements. If the preset project requirements cannot be met after the set of parameter values ​​are run, the next set of parameter values ​​can be selected for running and adjustment. This embodiment does not make specific limitations on this process.

[0135] Furthermore, after determining the evaluation index of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function, the method further includes:

[0136] If the evaluation indicators do not meet the project requirements, the next set of target parameters is randomly selected from the parameter set of the project to be processed, and the parameter conditions of the next set of target parameters in the project to be processed are determined according to the project requirements of the project to be processed.

[0137] In practical applications, if the evaluation index of the target parameter does not meet the preset project requirements, a new set of target parameters can be randomly selected from the parameter set of the project to be processed. The parameter conditions of the next set of selected target parameters in the project to be processed can be determined according to the requirements of the project parameters. This can be understood as continuing to execute the specific execution steps provided in the embodiments of this specification until the evaluation index of the target parameter is determined to meet the project requirements.

[0138] It should be noted that the above embodiments in this specification provide a restricted / unrestricted parameter tuning method. By introducing a penalty function, the performance evaluation index of the target parameter is calculated to determine the target parameter that meets the project requirements.

[0139] The project processing method provided in the embodiments of this specification also determines whether the target parameter meets the project requirements by calculating the evaluation index of the target parameter. If the project requirements are not met, the next set of target parameters can be selected, and the parameter conditions of the next set of target parameters can be determined. Then, the evaluation index of the next set of target parameters is calculated in a loop until the calculated evaluation index meets the project requirements. Only then can the target parameter be determined as the target parameter for target parameter tuning. Then, the parameters of the project to be processed are adjusted according to the target parameter so that the parameter performance of the project to be processed meets the project requirements.

[0140] In summary, the project processing method provided in the embodiments of this specification offers a general evaluation index formula that can simultaneously support single-objective optimization, multi-objective optimization, or multi-objective optimization under constraints. By introducing a penalty function, the determination of parameter performance indicators becomes more accurate and can meet different project requirements.

[0141] The following is in conjunction with the appendix Figure 2 Taking network application performance optimization as an example, the project processing methods provided in this manual will be further explained. Specifically, Figure 2 The present specification illustrates a process flowchart of a project processing method according to an embodiment, which specifically includes the following steps.

[0142] Step 202: The server determines the performance tuning requirements of network application parameters.

[0143] Specifically, the project requirements can be determined to be restrictive multi-objective optimization (without increasing latency, optimizing QPS).

[0144] Step 204: The server determines the target parameters for the network application performance tuning project based on the project requirements.

[0145] The target parameters can be latency and QPS.

[0146] Step 206: The server determines the parameter conditions of the target parameters based on the project requirements.

[0147] For example, the delay parameter condition is less than zero or equal to zero.

[0148] It should be noted that, in order to meet the requirement of no increase in latency, the latency constraint can be reduced compared to the current latency value in the project, or it can remain unchanged, that is, to ensure that the latency does not increase.

[0149] Step 208: The server can determine the penalty function corresponding to the target parameter based on the parameter conditions.

[0150] Specifically, when the delay is determined to be less than zero, the penalty function corresponding to the delay can be determined to be the first penalty function mentioned in the above embodiment, that is, the first penalty function can be determined to be the second segment function in formula (12) in the above embodiment:

[0151] strict, avglat(x) base -avglat<0

[0152] Furthermore, under the condition that the parameter conditions for the QPS parameter are non-restrictive, the penalty function corresponding to the QPS can be determined to be the first segment function in the general penalty function formula (12) in the above embodiment:

[0153] Loss(x, σ) = 0 normal

[0154] Step 210: The server can also calculate the performance score function of the target parameters in the network application.

[0155] Specifically, the performance scores of latency parameters and QPS parameters in network applications can be calculated, and finally, the corresponding performance score function can be analyzed. The specific method for determining the performance score function is not specifically limited in this embodiment.

[0156] Step 212: The server determines the evaluation index of the target parameter based on the penalty function and performance scoring function corresponding to the parameter.

[0157] Step 214: If the server determines that the evaluation index meets the project requirements, it can adjust the parameters of the network application based on the specific parameter values ​​of the target parameters to meet the operational performance requirements of the project.

[0158] Furthermore, if the server determines that the evaluation index does not meet the project requirements, it can randomly select the next set of parameters to continue determining the parameter conditions and execute the above process of determining the parameter index of the target parameter until the evaluation index of the target parameter meets the project requirements.

[0159] The project processing method provided in this specification determines the parameter conditions of the target parameters in the project to be processed based on project requirements, determines the penalty function corresponding to the parameter conditions, and implements the restriction or non-restriction of the target parameters by introducing the penalty function. It also determines the evaluation index of the processing performance of the target parameters in the project to be processed, and then judges whether the project requirements are met based on the evaluation index. Based on the target parameters that meet the project requirements, the project to be processed is adjusted to achieve the processing performance corresponding to the target parameters, while also meeting the user's project requirements for the project to be processed.

[0160] Corresponding to the above method embodiments, this specification also provides embodiments of object processing apparatus. Figure 3 A schematic diagram of a project processing apparatus according to one embodiment of this specification is shown. Figure 3 As shown, the device includes:

[0161] The condition determination module 302 is configured to determine the parameter conditions of the target parameters in the project to be processed based on the project requirements of the project to be processed.

[0162] The function determination module 304 is configured to determine the penalty function corresponding to the target parameter based on the parameter conditions, and to calculate the performance score function of the target parameter in the project to be processed;

[0163] The indicator determination module 306 is configured to determine the evaluation indicator of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function;

[0164] The parameter adjustment module 308 is configured to adjust the project to be processed based on the target parameters when the evaluation index meets the project requirements.

[0165] Optionally, the parameter adjustment module 308 is further configured to, when the evaluation index does not meet the project requirements, randomly select the next set of target parameters from the parameter set of the project to be processed, and determine the parameter conditions of the next set of target parameters in the project to be processed according to the project requirements of the project to be processed.

[0166] Optionally, the condition determination module 302 is further configured to determine the limiting parameters from the target parameters of the project to be processed based on the limiting parameter requirements of the project to be processed;

[0167] Based on the aforementioned limiting parameter requirements, determine the parameter conditions for the limiting parameters in the project to be processed.

[0168] Optionally, the condition determination module 302 is further configured to determine that the parameter condition of the target parameter in the project to be processed is empty based on the unrestricted parameter requirements of the project to be processed.

[0169] Optionally, the function determination module 304 is further configured to determine the penalty function of the constraint parameter as the first target penalty function when the parameter performance difference corresponding to the constraint parameter is less than zero based on the parameter conditions; or

[0170] When the performance difference of the limiting parameter is greater than or equal to zero based on the parameter conditions, the penalty function of the limiting parameter is determined as the second objective penalty function.

[0171] Optionally, the function determination module 304 is further configured to determine that the penalty function corresponding to the target parameter is zero based on the parameter condition when the parameter condition of the target parameter is determined to be empty.

[0172] Optionally, the indicator determination module 306 is further configured to subtract the performance score function of the project to be processed from the penalty function corresponding to the target parameter, and determine the evaluation indicator of the target parameter based on the result of the subtraction.

[0173] The project processing device provided in this manual determines the parameter conditions of the target parameters in the project to be processed based on the project requirements, determines the penalty function corresponding to the parameter conditions, and implements the restriction or non-restriction of the target parameters by introducing the penalty function. It also determines the evaluation index of the processing performance of the target parameters in the project to be processed, and then judges whether the project requirements are met based on the evaluation index. Based on the target parameters that meet the project requirements, the project to be processed is adjusted to achieve the processing performance corresponding to the target parameters, while also meeting the user's project requirements for the project to be processed.

[0174] The above is a schematic diagram of a project processing device according to this embodiment. It should be noted that the technical solution of this project processing device and the technical solution of the project processing method described above belong to the same concept. For details not described in detail in the technical solution of the project processing device, please refer to the description of the technical solution of the project processing method described above.

[0175] Figure 4 A structural block diagram of a computing device 400 according to one embodiment of this specification is shown. The components of the computing device 400 include, but are not limited to, a memory 410 and a processor 420. The processor 420 is connected to the memory 410 via a bus 430, and a database 450 is used to store data.

[0176] The computing device 400 also includes an access device 440, which enables the computing device 400 to communicate via one or more networks 460. Examples of these networks include a Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 440 may include one or more of any type of wired or wireless network interface (e.g., a Network Interface Card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) interface, a Wi-MAX interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.

[0177] In one embodiment of this specification, the aforementioned components of the computing device 400 and Figure 4 Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 4 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.

[0178] The computing device 400 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or PCs. The computing device 400 can also be a mobile or stationary server.

[0179] The processor 420 is configured to execute the following computer-executable instructions, which, when executed by the processor, implement the steps of the above-described item processing method.

[0180] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the object processing method described above belong to the same concept. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solution of the object processing method described above.

[0181] An embodiment of this specification also provides a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the above-described item processing method.

[0182] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium and the technical solution of the above-described project processing method belong to the same concept. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the above-described project processing method.

[0183] An embodiment of this specification also provides a computer program, wherein when the computer program is executed in a computer, it causes the computer to perform the steps of the above-described item processing method.

[0184] The above is an illustrative example of a computer program according to this embodiment. It should be noted that the technical solution of this computer program and the technical solution of the project processing method described above belong to the same concept. Details not described in detail in the technical solution of the computer program can be found in the description of the technical solution of the project processing method described above.

[0185] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0186] The computer instructions include computer program code, which may be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium may be appropriately added to or subtracted according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media may not include electrical carrier signals and telecommunication signals.

[0187] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments in this specification are not limited to the described order of actions, because according to the embodiments in this specification, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the embodiments in this specification.

[0188] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0189] The preferred embodiments disclosed above are merely illustrative of this specification. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the embodiments described herein. These embodiments are selected and specifically described in this specification to better explain the principles and practical applications of the embodiments, thereby enabling those skilled in the art to better understand and utilize this specification. This specification is limited only by the claims and their full scope and equivalents.

Claims

1. A project processing method, comprising: The parameter conditions of the target parameters in the project to be processed are determined according to the project requirements of the project to be processed, wherein the project requirements are network performance tuning requirements, and the target parameters are the parameters that need to be adjusted in the network tuning project. Based on the parameter conditions, the penalty function corresponding to the target parameter is determined, and the performance score function of the target parameter in the project to be processed is calculated. The determination of the penalty function based on the parameter conditions includes: when the performance difference of the parameter corresponding to the constraint parameter is less than zero based on the parameter conditions, the penalty function of the constraint parameter is determined as a first target penalty function, where the first target penalty function is a function for solving an unconstrained optimization problem based on a maximum value under performance degradation; or when the performance difference of the parameter corresponding to the constraint parameter is greater than or equal to zero based on the parameter conditions, the penalty function of the constraint parameter is determined as a second target penalty function, where the second target penalty function is a function for solving an unconstrained optimization problem without performance degradation; when the parameter conditions of the target parameter are empty, the penalty function corresponding to the target parameter is determined to be zero based on the parameter conditions; when the project requirement is a constraint parameter requirement, the constraint parameter is determined from the target parameters of the project to be processed according to the constraint parameter requirements of the project to be processed; the penalty function is used to transform a constrained optimization problem into solving an unconstrained optimization problem; the constraint parameter is a network performance parameter in the target parameters that is specified as not allowing performance degradation. The evaluation index of the target parameter is determined based on the penalty function corresponding to the target parameter and the performance scoring function; If the evaluation indicators meet the project requirements, the project to be processed is adjusted based on the target parameters.

2. The project processing method according to claim 1, after determining the evaluation index of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function, further includes: If the evaluation indicators do not meet the project requirements, the next set of target parameters is randomly selected from the parameter set of the project to be processed, and the parameter conditions of the next set of target parameters in the project to be processed are determined according to the project requirements of the project to be processed.

3. The project processing method according to claim 1 or 2, wherein the project requirement is a constraint parameter requirement. Accordingly, the parameter conditions for determining the target parameters in the project to be processed based on the project requirements include: Based on the constraint parameter requirements of the project to be processed, the constraint parameters are determined from the target parameters of the project to be processed; Based on the aforementioned limiting parameter requirements, determine the parameter conditions for the limiting parameters in the project to be processed.

4. The project processing method according to claim 1 or 2, wherein the project requirements are non-limiting parameter requirements. Accordingly, the parameter conditions for determining the target parameters in the project to be processed based on the project requirements include: Based on the unrestricted parameter requirements of the project to be processed, the parameter conditions of the target parameter in the project to be processed are determined to be empty.

5. The project processing method according to claim 1, wherein determining the evaluation index of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function includes: Subtract the performance score function of the project to be processed from the penalty function corresponding to the target parameter, and determine the evaluation index of the target parameter based on the result of the subtraction.

6. A project processing apparatus, comprising: The condition determination module is configured to determine the parameter conditions of the target parameter in the project to be processed based on the project requirements of the project to be processed, wherein the project requirements are network performance tuning requirements, and the target parameter is the parameter that needs to be adjusted in the network tuning project; A function determination module is configured to determine the penalty function corresponding to the target parameter based on the parameter conditions, and to calculate the performance score function of the target parameter in the project to be processed. The determination of the penalty function based on the parameter conditions includes: when the performance difference of the parameter corresponding to the constraint parameter is less than zero based on the parameter conditions, determining the penalty function of the constraint parameter as a first target penalty function, where the first target penalty function is a function for solving an unconstrained optimization problem based on a maximum value under performance degradation; or when the performance difference of the parameter corresponding to the constraint parameter is greater than or equal to zero based on the parameter conditions, determining the penalty function of the constraint parameter as a second target penalty function, where the second target penalty function is a function for solving an unconstrained optimization problem without performance degradation; when the parameter conditions for the target parameter are empty, determining the penalty function corresponding to the target parameter as zero based on the parameter conditions; when the project requirement is a constraint parameter requirement, determining the constraint parameter from the target parameters of the project to be processed according to the constraint parameter requirements of the project to be processed; the penalty function is used to transform a constrained optimization problem into solving an unconstrained optimization problem; and the constraint parameter is a network performance parameter specified in the target parameters as not allowing performance degradation. The indicator determination module is configured to determine the evaluation indicator of the target parameter based on the penalty function corresponding to the target parameter and the performance scoring function; The parameter adjustment module is configured to adjust the project to be processed based on the target parameters, provided that the evaluation indicators meet the project requirements.

7. A computing device, comprising: Memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions, which, when executed by the processor, implement the steps of the project processing method according to any one of claims 1-5.

8. A computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the item processing method according to any one of claims 1-5.