Method, device and equipment for determining task scheduling strategy
By obtaining scheduling tasks based on user operation behavior in the tool line of APP application, the shortcomings in the evaluation of different performance indicators are solved, and stable and efficient task scheduling strategy determination is achieved.
Patent Information
- Application Number
- CN202311550386.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-20
- Publication Date
- 2025-05-20
AI Technical Summary
In the tool line for APP applications, there are shortcomings in the evaluation of different performance indicators, including the different impacts of different indicators on user experience, and it is difficult to intuitively judge whether the overall performance level of the tool line has improved.
By obtaining multiple scheduling tasks based on user operation behavior, determining relevant performance indicators based on these tasks, using a comprehensive algorithm based on user group characteristics to calculate performance indicator scores, and then sorting and comparing the target strategy to determine the task scheduling of the target strategy.
It is realized that the impact of performance indicators on different strategies without relying on A/B experiments or deterioration experiments is evaluated, avoiding fluctuations in performance indicator scores, and the results are more stable, with high comprehensiveness and flexibility.
Smart Images

Figure CN120020721A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular, to a method, apparatus, computer device, and storage medium for determining a task scheduling strategy. Background Art
[0002] The measurement of the performance of each business line is composed of multiple indicators. Taking the business of the tool line (i.e., the submission link, hereinafter referred to as the tool line) as an example, there are currently more than 80 performance indicators for monitoring, analyzing, and optimizing the performance experience problems of users in the submission link, including the fluency experience and clarity experience of pages such as the shooting page, editing page, publishing page, prop / music details page, etc., as well as the usability and availability experience of specific functions such as albums, special effects, stickers, music, text, etc.
[0003] When evaluating the impact of performance indicators on user experience, these indicators are usually compared separately. For example, the change in the time taken for the first frame of the shooting page within half a year. However, this method has obvious shortcomings, including: different indicators have different degrees of impact on user experience, and it is necessary to focus on the indicators that can have an important impact on the business first. Moreover, the change directions and amplitudes of different indicators in the same period are different, making it difficult to form an intuitive understanding of whether the overall performance level of the tool line has improved. Summary of the Invention
[0004] In view of this, the present invention provides a method, apparatus, computer device, and storage medium for determining a business line task scheduling strategy to solve the evaluation problem of different performance indicators on the tool line in APP applications.
[0005] In a first aspect, the present invention provides a method for determining a business line task scheduling strategy, the method comprising:
[0006] Based on the operation behavior of a user in the application APP, obtaining a plurality of scheduling tasks corresponding to the operation behavior, and N strategies generated by the plurality of scheduling tasks according to different execution orders, where N≥2 and is a positive integer;
[0007] Determining, according to the plurality of scheduling tasks, the relevant performance indicators affected by each scheduling task, and determining a comprehensive algorithm based on the user population characteristics according to the relevant performance indicators;
[0008] Calculating N performance index scores according to the line comprehensive algorithm, where the N performance index scores correspond one-to-one to the N strategies;
[0009] Sorting and comparing the N performance index scores, and determining a target strategy according to the comparison result, where the target strategy is the highest one among the N performance index scores corresponding to the N strategies;
[0010] Performing the scheduling of the plurality of tasks according to the task execution order corresponding to the target strategy, and feeding back a response.
[0011] In combination with the first aspect, in a possible implementation manner, the multiple scheduling tasks include: user interface (UI) layout, software development kit (SDK) call, and core buttons; determining, according to the multiple scheduling tasks, relevant performance metrics affected by each scheduling task, including: parsing each scheduling task to obtain at least one performance metric that each scheduling task can affect, where the performance metric includes at least one of the following:
[0012] Time taken for the first frame of the shooting page UI, frame rate of the UI on different pages, response time of each function on different pages, time taken for the first frame of the shooting page, time taken for special effects to be displayed on the screen, publishing duration, preview frame rate, and recording frame rate.
[0013] Among them, the response time of each function on different pages includes the time taken for the special effect entry to load, the time taken for the album entry to load, etc.
[0014] In combination with the first aspect, in another possible implementation manner, determining a comprehensive algorithm based on user group characteristics according to the relevant performance metrics includes: dividing the total number of user groups or works created by user groups into multiple parts according to the order of each performance metric from low to high in at least one performance metric; obtaining the change information of business metrics for each of the multiple parts; screening out M target user groups from the multiple parts according to the change information of business metrics for each part; determining, according to the M target user groups, the average percentage change of the business metric corresponding to each performance metric when it is optimized, and multiplying the percentage of each performance metric by the proportion of the target user group of the performance metric in the user group to obtain the weight of each performance metric.
[0015] In combination with the first aspect, in yet another possible implementation manner, calculating N performance metric scores according to the business line comprehensive algorithm includes: performing a weighted average calculation on the difference amplitude of each performance metric compared to a preset performance metric according to the weight value of each performance metric to obtain N performance metric scores.
[0016] In combination with the first aspect, in yet another possible implementation manner, obtaining, from the M target user groups, the average percentage change of the business metric corresponding to each performance metric when it is optimized includes: obtaining, from the M target user groups, the change amplitude of the performance metric and the change amplitude of the business metric corresponding to each target user group; performing regression fitting on the relationship between the change amplitude of the performance metric and the change amplitude of the business metric to obtain, among the M target populations, the average percentage change of the business metric corresponding to each performance metric when it is optimized.
[0017] In combination with the first aspect, in another possible implementation, if the total number of works created by the user group is divided into multiple parts, then according to the change information of the business indicators of each part, M target user groups are screened and determined from the multiple parts, including: screening out M target work sets from the work sets of the multiple parts according to the change information of the business indicators of each part; determining M target user groups according to the M target work sets, where the target work sets and the target user groups are in one-to-one correspondence.
[0018] In combination with the first aspect, in another possible implementation, before calculating the weighted average of the difference amplitude of each performance indicator compared with the preset performance indicator, it further includes: inputting each performance indicator into the foregoing N strategies for operation to obtain the performance of each performance indicator under each strategy; comparing all the performance situations to obtain the difference amplitude of each performance indicator compared with the preset performance indicator.
[0019] In a second aspect, the present invention provides an apparatus for determining a business line task scheduling strategy, the apparatus including:
[0020] An acquisition module, configured to acquire, based on the operation behavior of the user on the application APP, a plurality of scheduling tasks corresponding to the operation behavior, and N strategies generated by the plurality of scheduling tasks according to different execution sequences, where N≥2 and is a positive integer;
[0021] A determination module, configured to determine the relevant performance indicators affected by each scheduling task according to the plurality of scheduling tasks, and determine a comprehensive algorithm based on the user group characteristics according to the relevant performance indicators;
[0022] A calculation module, configured to calculate N performance indicator scores according to the business line comprehensive algorithm, where the N performance indicator scores correspond to the N strategies one by one;
[0023] A comparison module, configured to sort and compare the N performance indicator scores, and determine a target strategy according to the comparison result, where the target strategy is the highest one among the N performance indicator scores corresponding to the N strategies;
[0024] An execution module, configured to execute the scheduling of the plurality of tasks according to the task execution sequence corresponding to the target strategy and feedback a response.
[0025] In a third aspect, the present invention provides an electronic device, including: a memory and a processor, which are communicatively connected to each other, and a computer instruction is stored in the memory, and the processor executes the computer instruction to execute the method for determining the task scheduling strategy in the first aspect or any corresponding implementation manner thereof.
[0026] Fourthly, the present invention provides a computer-readable storage medium, on which computer instructions are stored, and the computer instructions are used to cause a computer to execute the method for determining a task scheduling policy according to the first aspect or any corresponding embodiment thereof described above.
[0027] The method, device, and equipment for determining a task scheduling policy provided in this embodiment do not rely on A / B tests and do not require conducting degradation tests during the process of evaluating the influence of performance indicators on different policies, so the feasibility is strong. When determining the target policy, the weighted average calculation is used to determine the performance indicator scores of each policy, which can avoid the fluctuations in the performance indicator scores caused by adding or subtracting indicators, so the obtained results are more stable.
[0028] In addition, since the method in this embodiment adopts a comprehensive algorithm based on user group characteristics and measures the overall performance level of the business line rather than a single performance direction, the comprehensiveness is relatively high; and this method can be completed in a short period of time and has high flexibility.
[0029] In this embodiment, the performance indicators are also divided into different user groups according to strong and weak correlations. It is considered that for the user group with good performance indicator performance and no potential business benefits found, the performance threshold for this group is low or the experience effect for this performance is already relatively satisfactory. Under the condition that other factors remain unchanged, the optimal policy is mainly determined based on the data statistics of the target user group, excluding the relevant performance indicator data of other user groups except the target user group, so as to weaken the influence of the marginal effect on the performance indicator scores. Description of the Drawings
[0030] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following will briefly introduce the drawings required for use in the description of the specific embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0031] Figure 1 is a flowchart of a method for determining a task scheduling policy provided by an embodiment of the present invention;
[0032] Figure 2 is a schematic diagram of a method for determining a task scheduling policy provided by an embodiment of the present invention;
[0033] Figure 3 is a schematic diagram of a method for determining a scheduling policy according to performance indicators and weights provided by an embodiment of the present invention;
[0034] Figure 4 is a flowchart of a method for calculating performance indicator scores provided by an embodiment of the present invention;
[0035] Figure 5 It is a structural block diagram of an apparatus for determining a task scheduling strategy provided by an embodiment of the present invention;
[0036] Figure 6 It is a schematic diagram of the hardware structure of an electronic device provided by an embodiment of the present invention. Detailed implementation manners
[0037] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some but not all of the embodiments of the present invention.
[0038] It should be understood that the steps recorded in the method embodiments of the present disclosure can be executed in different orders and / or executed in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this regard.
[0039] The terms "including" and its variations used herein are open-ended, that is, "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment". In addition, it should be noted that the modifications of "one" and "multiple" mentioned in the present disclosure are illustrative rather than restrictive. Those skilled in the art should understand that unless clearly specified otherwise in the context, it should be understood as "one or more".
[0040] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only for illustrative purposes and do not limit the scope of these messages or information.
[0041] In addition, it should be noted that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, usage scopes, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0042] For example, when responding to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested by the user will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, an application program, a server, or a storage medium that executes the operations of the technical solutions of the present disclosure according to the prompt message.
[0043] As an optional but non-limiting implementation, in response to receiving an active request from a user, the way to send a prompt message to the user can be, for example, in the form of a pop-up window. The prompt message can be presented in text in the pop-up window. In addition, the pop-up window can also carry selection controls for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0044] It should be understood that the above notification and user authorization acquisition process is only illustrative and does not limit the implementation of the present disclosure. Other methods that comply with relevant laws and regulations can also be applied to the implementation of the present disclosure.
[0045] In addition, it should be noted that the data involved in each embodiment of the present technical solution (including but not limited to the data itself, the acquisition or use of the data) should comply with the requirements of corresponding laws, regulations and related regulations.
[0046] Next, the application scenarios of the technical solution of the present disclosure will be introduced.
[0047] The technical solution provided by the embodiments of the present invention is used to evaluate the performance index conditions of different services in the tool line. For the APP applications on the terminal side devices, each APP application from startup, running, executing corresponding functions, responding, etc. is displayed after a series of processes / applications are executed. For example, when a user clicks on a certain short video software, the process from starting the camera to shooting and then publishing a video consists of a series of task mobilizations.
[0048] The level of performance of each service line can be measured by multiple indicators. Taking the tool line service (hereinafter referred to as "tool line") as an example, such as the submission link tool line, there are currently more than 80 performance indicators, which are used to monitor, analyze and optimize the performance experience problems of users in the submission link.
[0049] However, when comparing the advantages and disadvantages of these performance indicators, such as the change of the first frame time-consuming on the shooting page within half a year, or the comparison with competitors in the same period, there will be obvious shortcomings. Because the influence degrees of different performance indicators on the user experience are different, when evaluating performance indicators, it is necessary to focus on the indicators that can have an important impact on the business first.
[0050] Currently, an analysis and comparison method is a performance index score calculation method based on A / B experiments. The disadvantages of this method include:
[0051] First, the effective data set is small. This method needs to rely on a large number of performance experiments with significant business impacts, and fit the relationship between performance and business from these experimental data. However, there is less experimental data that meets this requirement in the tool line.
[0052] Second, degradation experiments need to be conducted to increase the effective data set. There are multiple performance indicators on the tool line that do not bring significant business benefits and have not even started to be optimized. Therefore, a large number of degradation experiments need to be conducted to increase the effective data set.
[0053] Third, ignore the impact of marginal effects. As performance optimization increases, the business benefits that can be brought also increase, but the growth trend of business benefits will gradually slow down until the user's performance experience is not affected. At this stage, there is a user group for each performance indicator on the tool line that is not affected by this performance experience. Therefore, the A / B experiment method ignores the impact of marginal effects, resulting in inaccurate experimental results.
[0054] This embodiment provides a method for determining a task scheduling strategy for a business line, which is used to screen out some key performance indicators in the tool line, summarize the comprehensive performance level of the tool line, so as to evaluate the impact of each performance indicator on the overall performance level under different strategies, and find the strategy that has the best impact on the user experience.
[0055] This embodiment provides a method for determining a task scheduling strategy, which can be applied to a terminal device, including but not limited to: a client, a personal computer system PC, a server computer system, a handheld or laptop device, a microprocessor-based system, a network personal computer, a small computer system, a large computer system, etc.
[0056] As Figure 1 shown, the method includes:
[0057] Step S101: Based on the user's operation behavior on the application APP, obtain multiple scheduling tasks corresponding to the operation behavior, and N strategies generated by the multiple scheduling tasks in different execution orders. N≥2 and N is a positive integer.
[0058] One or more applications APP are pre-installed on the terminal device. When the user calls any one of the applications APP, the application APP starts and executes a series of tasks. For example, when the user starts a certain video software and shoots a short video, the user clicks on the video software APP application and then clicks on the video shooting control.
[0059] Among them, each operation behavior corresponds to generating multiple scheduling tasks. For example, 3 tasks are generated, namely task 1 (task1), task 2 (task2), and task 3 (task3). In addition, a series of user operation behaviors can correspond to one or more business lines, such as the submission business line, the short video shooting business line, etc. And N strategies are generated according to the different execution orders of multiple scheduling tasks. For example, for 3 tasks, task1 to task3, 6 strategies can be corresponding according to different execution orders. For example, Strategy 1: task 1 → task 2 → task 3; Strategy 2: task 1 → task 3 → task 2; Strategy 3: task 2 → task 3 → task 1; Strategy 4: task 3 → task 1 → task 2, and so on.
[0060] Optionally, in an example, the above-mentioned multiple scheduling tasks include: user interface UI layout, Software Development Kit (SDK) call, and core buttons, etc. Further, as Figure 2 shown, the UI layout includes: sidebar functions, bottom tab functions, top tab functions, etc. These controls or icons are generally presented on the client through the page UI. The SDK includes basic camera functions, filter beauty effects, image effects, and newly added SDKs that need to be uploaded. The execution of these tasks often depends on basic capabilities. In the core button task, it includes: preview frame rate and recording button, special effect entry, and registration access, etc. According to the different execution orders of the above 3 tasks, different strategies can be divided.
[0061] Step S102: Determine the relevant performance indicators affected by each scheduling task according to the multiple scheduling tasks, and determine a comprehensive algorithm based on the user group characteristics according to the relevant performance indicators.
[0062] Among them, the execution priority order of the above-mentioned multiple scheduling tasks will affect the change of relevant performance indicators. Specifically, determining the relevant performance indicators affected by each scheduling task according to the multiple scheduling tasks includes: first parsing each scheduling task to obtain at least one performance indicator that each scheduling task can affect. The performance indicators include at least one of the following: the time taken for the first frame of the UI on the shooting page (which can be understood as the time taken to display the shooting function on the UI interface after the user clicks the shooting page), the UI frame rate of different pages, such as the frame rate of the UI on the shooting page; the response time of each function under different pages, such as the time taken for the first frame of the shooting page, the time taken for the special effect to be displayed on the screen, the preview frame rate, and the recording frame rate. Further, the response time of each function under different pages includes the time taken for the special effect entry to be loaded and the time taken for the album entry to be loaded, etc. Then, a comprehensive algorithm based on the user group characteristics is determined according to these relevant performance indicators.
[0063] As Figure 2As shown in the figure, the performance indicators affected by parsing the above UI layout include: the time taken for the first frame of the UI on the shooting page, the frame rate of the UI on the shooting page, the time taken for function response, etc. The performance indicators obtained by parsing the SDK package include: the time taken for the first frame on the shooting page, the time taken for special effects to be displayed on the screen, the publishing duration, etc.; the performance indicators obtained by parsing the above core buttons include: the recording frame rate, the time taken for the special effects entry to be loaded, the time taken for the album entry to be loaded, etc. In addition, other performance indicators may also be included, which are not limited in this embodiment.
[0064] In step S102, the comprehensive algorithm based on user group characteristics refers to dividing the user clusters sampled by big data or the work clusters created by users into components, selecting the user groups with strong correlation between the changes in performance indicators and the changes in business indicators as the main basis for evaluating the quality of the evaluation strategy. This comprehensive algorithm can exclude the performance indicators with low performance experience thresholds in the user group / work cluster and retain the performance indicators with high performance experience thresholds, thus solving the impact brought by ignoring marginal benefits as described above.
[0065] It should be noted that the above low threshold or high threshold is relative to the user group or work cluster. Among them, the high threshold mainly refers to the user group with strong correlation between the changes in performance indicators and the changes in business indicators; while the low threshold refers to the user group with weak correlation between the changes in performance indicators and the changes in business indicators. In this embodiment, the user groups with high thresholds are mainly concerned.
[0066] Step S103: Calculate N performance index scores according to the comprehensive algorithm.
[0067] Among them, the N performance index scores correspond to N strategies one by one, that is, one strategy corresponds to one performance index score.
[0068] Specifically, step S103 includes: first, according to the comprehensive algorithm, the weight corresponding to each performance indicator can be obtained, and then, according to the weight of each performance indicator, the difference amplitude of each performance indicator compared with the preset performance indicator is weighted and averaged to obtain the N performance index scores, and these N performance index scores correspond to N strategies.
[0069] For example, based on the above 3 tasks of task1 to task3 and 6 strategies, one of the strategies is a preset strategy (or called the default strategy), and the 3 performance indicators corresponding to this preset strategy are preset performance indicators. Each performance indicator in the other 5 strategies is compared with the preset performance indicators in this preset strategy to obtain the difference amplitude, and finally, the difference amplitudes of different performance indicators are weighted and averaged to obtain the N performance index scores corresponding to N strategies.
[0070] Taking the tool line task scheduling as an example, in one implementation, the N performance index scores corresponding to N strategies are calculated according to the following relational expression. In this embodiment, the contribution rate to the submission conversion rate is taken as an example:
[0071]
[0072] Among them, score represents the performance metric score, and W cpi represents the weight of the submission conversion rate (Weight, W), and CP i represents the submission conversion rate (Contribution to publish, CP). CP is a business metric, and W cmi represents the weight of other business metrics, and CM i represents other business metrics (Contribution to other metrics, CM), such as including the APP stay duration. %Δ represents the percentage difference in performance metrics, such as the percentage difference in tool performance metrics. n is the number of performance metrics.
[0073] Step S104: Sort and compare the N performance metric scores, and determine the target strategy according to the comparison results.
[0074] Specifically, after calculating the N performance metric scores, sort the N performance metric scores in descending order, and obtain the task execution order according to the magnitudes of the respective performance metric scores. In this embodiment, select the strategy corresponding to the highest one among the performance metric scores as the target strategy. Because the higher the performance metric score, the greater the impact of the task on the user group experience, and the higher the execution priority of the task, so select the highest performance metric score.
[0075] Step S105: Execute the scheduling of the multiple tasks according to the task execution order corresponding to the target strategy, and give feedback responses.
[0076] After determining the target strategy, execute according to the task scheduling order corresponding to the target strategy task, and feedback the response after execution to the user. For example Figure 3As shown, there are a total of i scheduling tasks including Task 1, Task 2, Task 3, ..., Task i. Each task corresponds to a performance metric. For example, the i tasks correspond to Performance Metric 1 (abbreviated as "Performance 1"), Performance 2, ..., Performance x. And according to the business line comprehensive algorithm in the above step S102, the weight metrics (weight values) corresponding to each performance metric are obtained, such as weights W1, W2, ..., Wi, as well as the difference amplitudes of each performance metric, %Δ1, %Δ2, %Δ3, ..., and %Δi. According to step S103, the performance metric scores corresponding to each policy are calculated. For example, the performance metric score 1 is obtained by weighted averaging based on the weight W1 and the difference amplitude %Δ1 of the performance metric, the performance metric score 2 is obtained by weighted averaging based on the weight W2 and the difference amplitude %Δ2 of the performance metric, the performance metric score 3 is obtained by weighted averaging based on the weight W3 and the difference amplitude %Δ3 of the performance metric, ..., the performance metric score i is obtained by weighted averaging based on the weight Wi and the difference amplitude %Δi of the performance metric. Finally, all the performance metric scores are compared and based on the magnitudes of the performance metric scores, the task execution order is obtained. As Figure 3 shown, the task execution order corresponding to the target policy is: Task 1 → Task i → Task 2, ..., → Task 3. After the client executes according to this task execution order, a response is fed back to the user.
[0077] The method provided in this embodiment first analyzes (disassembles / classifies) multiple tasks and corresponds them to the affected performance metrics. Since different execution orders will directly affect the performance metric performance and thus affect the user experience, according to the comprehensive algorithm of the user group characteristics, the performance metric scores of each policy are obtained, then the magnitudes of all the performance metric scores are compared, the one with the largest performance metric score is selected, and the corresponding policy is determined as the target policy. This method does not rely on A / B tests and does not require conducting degradation tests either, so it has strong feasibility. When determining the target policy, using weighted average calculation to determine the performance metric scores of each policy can avoid fluctuations in the performance metric scores caused by adding or subtracting metrics, so the obtained results are more stable.
[0078] In addition, since the method of this embodiment adopts a business line comprehensive algorithm based on user group characteristics to measure the overall performance level of the business line rather than a single performance direction, it has high comprehensiveness; and this method can be completed in a short period and has high flexibility.
[0079] Among them, in a possible implementation manner of this embodiment, the above step S102 specifically includes: dividing the total number of users in the user group or the works created by the user group into multiple parts according to the order of each performance index from low to high in the at least one performance index; obtaining the change information of the business index for each of the multiple parts; determining M target user groups from the multiple parts according to the change information of the business index for each part; obtaining the average percentage change of the business index corresponding to each performance index when it is optimized in the M target user groups, and multiplying the percentage of each performance index by the proportion of the target user group of the performance index in the user group to obtain the weight of each performance index.
[0080] Optionally, the target user group can also be referred to as a high-threshold user group.
[0081] More specifically, as Figure 4 shown, the above method includes:
[0082] Step S401: Divide the total number of users in the user group or the total number of works created by the user group into multiple parts according to the performance of each performance index from low to high. The number of users or works in each part can be equal, such as 10 equal parts, 100 equal parts or 1000 equal parts.
[0083] The performance of each performance index from low to high can be obtained through big data statistics.
[0084] Step S402: Judge the correlation between each part of the performance index and the business index.
[0085] According to the change trend of the business index for each part (the performance of the performance index), divide the number of people in 10 parts, 100 parts or 1000 parts into: a high-threshold user group and a low-threshold user group, and obtain the proportion of the high-threshold user group in the total user group and the proportion of the low-threshold user group in the total user group; the difference between the two user groups is that the change of the business index of the high-threshold user group will increase with the optimization of the performance index, and the change of the business index of the low-threshold user group will decrease or fluctuate with the performance optimization.
[0086] In this embodiment, it is divided into two categories according to the correlation, one is strong correlation and the other is weak correlation. Among them, strong correlation means that the change of the business index will increase with the optimization of the performance index, and this type of user group is marked as a high-threshold user group; weak correlation means that the change of the business index will decrease or fluctuate with the performance optimization, and the user group that meets this characteristic is marked as a low-threshold user group.
[0087] Step S403: Determine the high-threshold user group in the user group or the user group created by the total number of works according to the judgment in S402 above. In this embodiment, this user group is also referred to as the target user group.
[0088] Among them, the high-threshold user group is the user group with strong influence on relevance; the low-threshold user group corresponds to the user group with weak relevance mentioned above. In this embodiment, the user group with strong influence on relevance is mainly concerned.
[0089] Optionally, if the target user group (high-threshold user group) is 3 out of the 10 portions divided in the foregoing step S401, for example, M = 3, then the proportion of the high-threshold user group in the total user group can be calculated as 3 / 10 = 0.3.
[0090] Step S404: Obtain the average percentage change of the business indicator corresponding to each performance indicator during optimization.
[0091] Specifically, first obtain the change range of the performance indicator and the change range of the business indicator corresponding to each target user group among the M target user groups; assume that the change of the business indicator is linearly related to the change range of the performance indicator; perform regression fitting on the relationship between the change range of the performance indicator and the change range of the business indicator to obtain the average percentage change of the business indicator corresponding to each performance indicator when it is optimized by 1% among the M target user groups.
[0092] Step S405: Multiply the change range of the performance indicator of the target user group by the proportion of the target user group of each indicator relative to the user group to obtain the weight of each performance indicator.
[0093] Among them, the change range of the performance indicator of the target user group (high-threshold user group) refers to the average percentage change of the business indicator in step S404. According to this percentage, multiply the proportion of the high-threshold user group relative to the user group obtained in step S403 to obtain the weight (W) of each performance indicator.
[0094] Illustrate with an example. Refer to Table 1, which is an example of calculating the performance indicator weight with the submission conversion rate as the business indicator.
[0095] Table 1
[0096]
[0097]
[0098] As shown in Table 1, the performance indicator weights of the target user group are statistically calculated for 5 performance indicators under different operating systems OS (Android or iOS system).
[0099] Step S406: Perform a weighted average calculation on the weight of each performance indicator and the difference range of each performance indicator compared to the preset performance indicator to obtain the performance indicator score generated by each period / current APP application.
[0100] Specifically, the difference range of each performance metric relative to the baseline value can be obtained in the following way: run each performance metric in N strategies respectively to obtain the performance of each performance metric under different strategies; compare all the performances to obtain the difference range of each performance metric from the preset performance metric (or called the baseline value).
[0101] For example, taking the two performance metrics of the first frame of shooting and the first frame of editing under the Android system and the iOS system as examples. Assume that under the Android system, the difference degree of the first frame of shooting compared to the performance metric under the iOS system is an increase of 10%, and the difference degree of the first frame of editing compared to the performance metric under the iOS system is a decrease of 5%. Then, according to the weights in Table 1 above, calculate the performance metric score (Score1) of the first frame of shooting and the first frame of editing under the Android system as follows:
[0102] Score1 = [0.018×(1 + 10%) + 0.002×(1 - 5%)] / (0.018 + 0.002) = 1.085
[0103] Assume that under the iOS system, the difference degree of the first frame of shooting compared to the performance metric under the Android system is an increase of 8%, and the difference degree of the first frame of editing compared to the performance metric under the Android system is a decrease of 10%. Then, according to the weights in Table 1 above, calculate the performance metric score (Score2) of the first frame of shooting and the first frame of editing under the iOS system as follows:
[0104] Score2 = [0.068×(1 + 8%) + 0.000×(1 - 10%)] / (0.068 + 0.000) = 1.08
[0105] Compare score1 and score2, 1.085 > 1.08, that is, score1 > score2. Therefore, it is determined that the strategy of executing the tasks including the first frame of shooting and the first frame of editing under the Android system is better than the strategy of executing these two tasks under the iOS system.
[0106] It should be noted that in this embodiment, the difference range of each performance metric relative to the preset performance metric can also be calculated by means of time comparison and competitor comparison, etc. For example, for a certain performance metric, use the percentage difference of this metric in other periods compared to the same period of this metric (time trend), or the percentage difference of this metric in other APPs compared to this metric on the current APP (competitor comparison) to obtain the difference range of the current performance metric.
[0107] In this embodiment, different user groups are divided according to the strong and weak correlations of performance indicators. It is considered that for the user group with good performance indicators but no potential business benefits found, the performance threshold is low or the experience effect of this performance is already relatively satisfactory. Under the condition that other factors remain unchanged, the higher the proportion of this user group, the lower the score of this performance indicator, thereby weakening the impact of the marginal effect on the performance indicator score.
[0108] Optionally, in another possible implementation, if the total number of works created by the user group is divided into multiple parts, for example, the total number of works is divided into 10 parts, and the number of works in each part is equal.
[0109] Based on the change information of the business indicators for each part as described above, M target user groups are screened and determined from the multiple parts, including: screening out M target work sets from the work sets created by the M equal parts of user clusters; determining M target user groups based on the M target work sets, where the target work set corresponds to the target user group one by one, that is, each target user group corresponds to a target work set.
[0110] Specifically, according to the performance of each performance indicator from low to high, the works created by users are evenly divided into 20 equal parts, and the performance indicators (such as the time taken for the first frame of the shooting page) and business indicators (such as the submission conversion rate) of the number of user works in each of the 20 equal parts (in the submission link) are obtained. Based on the performance of each of the 20 equal parts, a set of works with strong correlation is judged; for example, it is assumed that a total of 3 sets of works with strong correlation are screened out (as the target work sets); then, according to these 3 target work sets with strong correlation, the target user groups corresponding to each work set are found. In this embodiment, 3 target user groups are determined, and then these 3 user groups are used as 3 target user groups.
[0111] In this embodiment, a device for determining a business line task scheduling strategy is also provided. This device is used to implement the above-mentioned embodiments and preferred implementation manners, and those that have been described will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that can achieve a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated.
[0112] This embodiment provides a device for determining a business line task scheduling strategy, as Figure 5 shown. This device includes: an acquisition module 510, a determination module 520, a calculation module 530, a comparison module 540, and an execution module 550. In addition, this device may also include other more or fewer modules / units, such as a storage module, a sending module, etc.
[0113] Among them, the acquisition module 510 is used to obtain multiple scheduling tasks corresponding to the operation behavior based on the user's operation behavior in the application APP, and N policies generated by the multiple scheduling tasks according to different execution orders, where N≥2 and is a positive integer.
[0114] The determination module 520 is used to determine the relevant performance indicators affected by each scheduling task according to the multiple scheduling tasks, and determine a comprehensive algorithm based on the user group characteristics according to the relevant performance indicators.
[0115] The calculation module 530 is used to calculate N performance index scores according to the comprehensive algorithm, where the N performance index scores correspond one-to-one to the N policies.
[0116] The comparison module 540 is used to sort and compare the N performance index scores, and determine the target policy according to the comparison result. The target policy is the highest one among the N performance index scores corresponding to the N policies.
[0117] The execution module 550 is used to execute the scheduling of multiple tasks according to the task execution order corresponding to the target policy and feedback the response.
[0118] Optionally, in a specific implementation manner of this embodiment, the above multiple scheduling tasks include: user interface UI layout, software development kit SDK call, and core button.
[0119] The determination module 520 is specifically used to parse each scheduling task to obtain at least one performance indicator that each scheduling task can affect. The at least one performance indicator includes: the time taken for the first frame of the shooting page UI, the UI frame rate of different pages, the response time of each function under different pages, the time taken for the first frame of the shooting page, the time taken for the special effect to be displayed on the screen, the publishing duration, the preview frame rate, and the recording frame rate, etc.
[0120] Among them, the response time of each function under different pages includes the time taken for the special effect entry to be loaded and the time taken for the album entry to be loaded, etc. The UI frame rate of different pages includes the UI frame rate of the shooting page and the editing page.
[0121] Optionally, in another specific implementation manner of this embodiment, the determination module 520 is specifically used to divide the total number of user groups or works created by the user group into multiple parts according to the order of each performance indicator from low to high in the at least one performance indicator; obtain the change information of the business indicators for each part; screen out M target user groups from the multiple parts according to the change information of the business indicators for each part, and determine the average change percentage of the business indicators corresponding to each performance indicator when it is optimized according to the M target user groups, and multiply the percentage of each performance indicator by the proportion of the target user group of the performance indicator in the user group to obtain the weight of each performance indicator.
[0122] Optionally, in another specific implementation manner of this embodiment, the determining module 520 is further specifically configured to perform a weighted average calculation on the difference amplitude of each performance metric compared to the preset performance metric according to the weight value of each performance metric, so as to obtain N performance metric scores.
[0123] Optionally, in yet another specific implementation manner of this embodiment, the determining module 520 is further specifically configured to obtain the change amplitude of the performance metric and the change amplitude of the service metric corresponding to each target user group among the M target user groups; perform regression fitting on the relationship between the change amplitude of the performance metric and the change amplitude of the service metric, so as to obtain the average percentage change of the service metric corresponding to each performance metric during optimization.
[0124] Optionally, in yet another specific implementation manner of this embodiment, when the total number of works created by the user group is divided into multiple portions, the determining module 520 is further specifically configured to screen out M target work sets from the multiple work sets according to the change information of the service metric of each portion; determine M target user groups according to the M target work sets, where the target work set corresponds to the target user group one by one.
[0125] Optionally, in yet another specific implementation manner of this embodiment, before performing a weighted average calculation on the difference amplitude of each performance metric, the obtaining module 510 is further configured to run each performance metric in N strategies respectively, so as to obtain the performance of each performance metric under different strategies; compare all the performances to obtain the difference amplitude of each performance metric compared to the preset performance metric under different strategies.
[0126] The device provided in this embodiment does not rely on A / B tests and does not need to conduct degradation tests during the process of evaluating the impact of performance metrics on different strategies, so it has strong feasibility. When determining the target strategy, the weighted average calculation is used to determine the performance metric scores of each strategy, which can avoid the fluctuations of the performance metric scores caused by adding or subtracting metrics, so the obtained results are more stable.
[0127] In addition, since the method of this embodiment uses a comprehensive algorithm for the business line based on user group characteristics to measure the overall performance level of the business line rather than a single performance direction, it has high comprehensiveness; and this method is realized in a short period of time and has high flexibility.
[0128] The device in this embodiment is presented in the form of functional units. Here, the unit refers to an ASIC circuit, a processor and a memory that execute one or more software or fixed programs, and / or other devices that can provide the above functions.
[0129] The further function descriptions of the above-mentioned various modules and units are the same as those in the corresponding embodiments above, and will not be elaborated here.
[0130] An embodiment of the present invention further provides an electronic device having the above-mentioned Figure 5 shown device.
[0131] Figure 6 FIG. 6 is a schematic structural diagram of an electronic device provided by an alternative embodiment of the present invention. The electronic device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including a high-speed interface and a low-speed interface. Each component communicates with each other using different buses and can be installed on a common main board or installed in other ways as needed. The processor can process instructions executed within the electronic device, including instructions stored in the memory or on the memory to display graphical information of a GUI on an external input / output device (such as a display device coupled to the interface).
[0132] In some alternative embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, and each device provides some necessary operations (for example, as a server array, a set of blade servers, or a multi-processor system). Figure 6 Here, one processor 10 is taken as an example.
[0133] The processor 10 can be a central processing unit, a network processor, or a combination thereof. Among them, the processor 10 can further include a hardware chip. The above-mentioned hardware chip can be an application-specific integrated circuit, a programmable logic device, or a combination thereof. The above-mentioned programmable logic device can be a complex programmable logic device, a field programmable gate array, a generic array logic, or any combination thereof.
[0134] Among them, the memory 20 stores instructions executable by at least one processor 10, so that the at least one processor 10 executes the method shown in the above embodiment.
[0135] The memory 20 can include a program storage area and a data storage area. Among them, the program storage area can store an operating system and application programs required for at least one function; the data storage area can store data created according to the use of the electronic device presented by a kind of landing page of a small program, etc. In addition, the memory 20 can include a high-speed random access memory, and can also include a non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some alternative embodiments, the memory 20 can optionally include a memory remotely set relative to the processor 10, and these remote memories can be connected to the electronic device through a network. Examples of the above network include but are not limited to the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.
[0136] The memory 20 may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as flash memory, hard disk or solid state drive; the memory 20 may further include a combination of the above types of memory.
[0137] The electronic device further includes an input device 30 and an output device 40. The processor 10, the memory 20, the input device 30 and the output device 40 may be connected through a bus or other means. Figure 6 Taking connection through a bus as an example.
[0138] The input device 30 can receive input digital or character information, and generate key signal inputs related to the user settings and function controls of the electronic device, such as touch screen, keypad, mouse, trackpad, touchpad, joystick, one or more mouse buttons, trackball, joystick, etc. The output device 40 may include a display device, an auxiliary lighting device (such as an LED), and a tactile feedback device (such as a vibration motor), etc. The above display device includes but is not limited to liquid crystal display, light emitting diode, display and plasma display. In some alternative embodiments, the display device may be a touch screen.
[0139] In addition, the electronic device further includes a communication interface for communicating with other devices or communication networks.
[0140] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or be implemented as computer code that can be recorded on a storage medium, or be implemented as computer code originally stored in a remote storage medium or a non-transitory machine-readable storage medium and downloaded through a network and will be stored in a local storage medium, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware.
[0141] Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory, a random access memory, a flash memory, a hard disk or a solid state drive, etc.; further, the storage medium can also include a combination of the above types of memory. It can be understood that a computer, a processor, a microprocessor controller or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by the computer, the processor or the hardware, the method for determining the service line task scheduling strategy shown in the above embodiment is implemented.
[0142] Although the embodiments of the present invention are described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations all fall within the scope defined by the appended claims.
Claims
1. A method for determining a task scheduling strategy, characterized in that: The method comprises: Based on the user's operation behavior in the application APP, multiple scheduling tasks corresponding to the operation behavior are obtained, and N strategies generated by the multiple scheduling tasks in different execution orders, where N ≥ 2 and is a positive integer; Determining relevant performance indicators affected by each scheduling task according to the multiple scheduling tasks, and determining a comprehensive algorithm based on user group characteristics according to the relevant performance indicators; According to the comprehensive algorithm, N performance index scores are calculated, wherein the N performance index scores correspond one to one to the N strategies; Sorting and comparing the N performance indicator scores, and determining a target strategy according to the comparison result, wherein the target strategy is the highest one among the N performance indicator scores corresponding to the N strategies; The scheduling of multiple tasks is performed according to the task execution order corresponding to the target strategy, and a response is fed back.
2. The method according to claim 1, characterized in that The multiple scheduling tasks include: user interface UI layout, software development kit SDK call and core button; Determining, according to the plurality of scheduling tasks, relevant performance indicators affected by each scheduling task, including: Each of the scheduling tasks is parsed to obtain at least one performance indicator that each of the scheduling tasks can affect, and the performance indicator includes at least one of the following: The time taken to shoot the first frame of the page UI, the frame rate of the UI on different pages, the time taken to respond to each function on different pages, the time taken to shoot the first frame of the page, the time taken to display special effects on the screen, the publishing duration, the preview frame rate and the recording frame rate; among them, the time taken to respond to each function on different pages includes the time taken to load the special effects entrance and the time taken to load the album entrance.
3. The method according to claim 2, characterized in that The step of determining a comprehensive algorithm based on user group characteristics according to the relevant performance indicators includes: Dividing the user group or the total number of works created by the user group into multiple parts according to the order of each of the at least one performance indicator from low to high; Obtaining business indicator change information of each of the multiple copies; According to the business indicator change information of each copy, M target user groups are screened and determined from the multiple copies; According to the M target user groups, determine the average change percentage of the business indicator corresponding to each performance indicator when it is optimized, and multiply the percentage of each performance indicator by the proportion of the target user group of the performance indicator in the user group to obtain the weight of each performance indicator.
4. The method according to claim 3, characterized in that According to the comprehensive algorithm, N performance indexes are calculated, including: According to the weight value of each performance indicator, a weighted average calculation is performed on the difference between each performance indicator and the preset performance indicator to obtain the N performance indicator scores.
5. The method according to claim 3, characterized in that: Determining, according to the M target user groups, an average change percentage of a business indicator corresponding to each performance indicator when it is optimized, includes: Obtaining a performance indicator change range and a business indicator change range corresponding to each target user group in the M target user groups; Regression fitting is performed on the relationship between the range of change of the performance indicator and the range of change of the business indicator to obtain the average change percentage of the business indicator corresponding to each performance indicator during optimization.
6. The method according to claim 3, characterized in that If the total number of works created by the user group is divided into multiple copies, then according to the business indicator change information of each copy, M target user groups are screened and determined from the multiple copies, including: According to the business indicator change information of each of the pieces, M target collections are selected from the plurality of collections of works; According to the M target folios, M target user groups are determined, wherein the target folios correspond to the target user groups one by one.
7. The method according to claim 4, characterized in that Before performing weighted average calculation on the difference between each performance indicator and the preset performance indicator, the method further includes: Input each of the performance indicators into the N strategies and run them to obtain the performance of each of the performance indicators under each of the strategies; All the performance conditions are compared to obtain the difference between each performance indicator and the preset performance indicator.
8. A device for determining a task scheduling strategy, characterized in that: The device comprises: An acquisition module, used to acquire, based on the user's operation behavior in the application APP, multiple scheduling tasks corresponding to the operation behavior, and N strategies generated by the multiple scheduling tasks in different execution orders, where N ≥ 2 and is a positive integer; A determination module, configured to determine, according to the plurality of scheduling tasks, relevant performance indicators affected by each scheduling task, and determine, according to the relevant performance indicators, a comprehensive algorithm based on user group characteristics; A calculation module, configured to calculate N performance index scores according to the comprehensive algorithm, wherein the N performance index scores correspond one-to-one to the N strategies; A comparison module, used to sort and compare the N performance index scores, and determine a target strategy according to the comparison result, wherein the target strategy is the highest one among the N performance index scores corresponding to the N strategies; The execution module is used to execute the scheduling of multiple tasks according to the task execution order corresponding to the target strategy and feedback the response.
9. An electronic device, characterized in that: comprising a memory and a processor, wherein the memory and the processor are connected; The memory stores computer instructions; The processor executes the method for determining a task scheduling strategy according to any one of claims 1 to 7 by executing the computer instructions.
10. A computer-readable storage medium, characterized in that: The computer readable storage medium has computer instructions stored thereon. The computer instructions are used to enable a computer to execute the method for determining a task scheduling strategy according to any one of claims 1 to 7.