A multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment

By optimizing task scheduling using the multi-objective MAVOA algorithm, the problems of uneven resource utilization and high costs in heterogeneous cloud computing are solved, achieving efficient resource scheduling and load balancing, and improving user satisfaction.

CN115454601BActive Publication Date: 2025-10-21DALIAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211121786.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-15
Publication Date
2025-10-21
Estimated Expiration
2042-09-15

AI Technical Summary

Technical Problem

In heterogeneous cloud computing environments, traditional scheduling strategies are difficult to effectively meet the needs of multi-objective optimization, leading to problems such as uneven resource utilization and excessive costs.

Method used

The multi-objective MAVOA algorithm is adopted. By modeling the task scheduling problem, setting the number of iterations and the population size, using different update formulas and local scheduling strategies, and combining the Metropolis criterion and cosine similarity load balancing strategy, the mapping relationship between tasks and processor nodes is optimized to achieve dynamic resource scheduling.

Benefits of technology

It effectively reduced platform costs, improved user satisfaction, achieved efficient resource utilization and load balancing, and enhanced the robustness of the algorithm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115454601B_ABST
    Figure CN115454601B_ABST
Patent Text Reader

Abstract

The application discloses a kind of multi-objective MAVOA algorithm optimization task scheduling methods under heterogeneous cloud environment, the method is first to the task scheduling problem under heterogeneous cloud environment is modeled, clear objective function, variable range and constraint condition;Second, the population individual position in MAVOA is mapped to the candidate solution of the task and the processor between mapping problem, wherein each dimension of position vector represents an allocation rule.Last, MVAOA obtains optimal candidate solution and optimal fitness value by multiple iterations, wherein the optimal candidate solution is the best mapping relationship of task and processor node, and the optimal fitness value is the minimum platform cost of objective function.The application can obtain excellent task scheduling scheme, well solve the problem of uneven system resource utilization in platform, effectively reduce platform service cost.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of swarm intelligence optimization, and in particular to a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment. Background Art

[0002] As a new business computing model and service model, cloud computing is a new generation of high-speed network service platforms. As its system scale and computing performance continue to increase, high-efficiency scheduling optimization has become an increasingly popular topic. High-efficiency optimization scheduling of heterogeneous cloud computing systems is a complex optimization problem with multiple objectives, dynamic constraints, and real-time preferences. On the one hand, it is necessary to maximize platform service profits while meeting user needs. On the other hand, complex cloud computing systems have characteristics such as node heterogeneity, different pricing, and dynamic resource changes. Traditional simple scheduling strategies cannot meet these complex multi-objective optimization requirements. Therefore, it is of great significance to study multi-objective optimization scheduling methods in cloud computing environments. Summary of the Invention

[0003] The purpose of the present invention is to provide a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment, which can obtain a better scheduling solution, effectively reduce platform costs, and improve user satisfaction.

[0004] To achieve the above objectives, this application proposes a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment, including:

[0005] Step 1: Model the task scheduling problem in a heterogeneous cloud environment, determine the optimization objectives and constraints, and obtain the objective function of the task scheduling problem;

[0006] Step 2: Set the maximum number of iterations maxiterations and the number of populations N, and obtain the initial population X. The individuals in the population represent the mapping relationship between tasks and processor nodes. Each individual X i The position corresponds to a candidate solution, X ij It represents the value of the jth dimension of the i-th candidate solution, that is, the i-th task is bound to the processor node j;

[0007] Step 3: Evaluate the population according to the objective function of the task scheduling problem; obtain the fitness value F of each candidate solution; update the current best candidate solution BestX, SecondBestX and the best fitness value BestF, SecondBestF;

[0008] Step 4: Obtain the judgment value P1, mark the candidate solutions whose fitness value F is greater than 1 and whose judgment value P1 is greater than the random number rand as Class 1 candidate solutions, mark the candidate solutions whose fitness value F is greater than 1 and whose judgment value P1 is less than or equal to the random number rand as Class 2 candidate solutions, and update the Class 1 candidate solutions and Class 2 candidate solutions in real time;

[0009] Step 5: When the optimal fitness value BestF of the tth iteration t and the optimal fitness value BestF of the t-1th iteration t-1 If they are equal, the mutation count count is increased by 1; when the mutation count count accumulates to the set value, an individual position update occurs, at which time the mutation count count is returned to 0, and the process goes to step 9;

[0010] Step 6: Obtain the judgment value P2, mark the candidate solutions whose fitness value F is greater than or equal to 0.5 and less than 1 and whose judgment value P2 is greater than or equal to the random number rand as Class 3 candidate solutions; mark the candidate solutions whose fitness value F is greater than or equal to 0.5 and less than 1 and whose judgment value P2 is less than the random number rand as Class 4 candidate solutions, and update the Class 3 candidate solutions and Class 4 candidate solutions in real time;

[0011] Step 7: Obtain the judgment value P3, mark the candidate solutions whose fitness value F is less than 0.5 and whose judgment value P3 is greater than or equal to the random number rand as 5-category candidate solutions; mark the candidate solutions whose fitness value F is less than 0.5 and whose judgment value P3 is less than the random number rand as 6-category candidate solutions; and update the 5-category candidate solutions and 6-category candidate solutions in real time;

[0012] Step 8: Use the local scheduling strategy based on the Metropolis criterion to optimize the non-dominated solutions in the population, and update the positions of individuals that overflow the boundary range, thereby updating the population;

[0013] Step 9: Classify processing nodes using dynamic thresholds, use the modified cosine similarity load balancing strategy to migrate tasks between overloaded and underloaded processing nodes, balance system resource utilization, and update individual positions.

[0014] Step 10: Determine whether the maximum number of iterations has been reached. If so, proceed to step 11; otherwise, return to step 3.

[0015] Step 11: Obtain the optimal candidate solution BestX and the optimal fitness value BestF. The optimal candidate solution BestX is the optimal mapping relationship between tasks and processor nodes, and the optimal fitness value BestF is the minimized platform cost of the objective function.

[0016] Furthermore, the candidate solutions of type 1 in step 4 are updated using formula (1), and the candidate solutions of type 2 are updated using formula (2):

[0017] P(i+1)=|ceil(R(i)-F*|2*rand*R(i)-P(i)|)mod m| if P1≥rand P1 (1)

[0018] P(i+1)=|ceil(R(i)-F+rand2*((ub-lb)*rand3+lb))mod m|if P1 <rand P1 (2)

[0019]

[0020]

[0021]

[0022]

[0023] Among them, rand is a random number between (0,1), ceil is rounded up, R(i) is one of the best vultures, and the best vulture is the optimal mapping relationship between tasks and processor nodes under the current number of iterations. P(i+1) is the vulture position vector in the next iteration, which is the mapping relationship between tasks and processor nodes after optimization adjustment. P(i) is the current vector position of the vulture, Iteration i represents the current number of iterations, maxiterations represents the maximum number of iterations, F represents the value that changes with the number of iterations, z is a random number between (-1,1), and h is a random number between (-2,2); ub and lb are the upper and lower bound vectors of the individual, m is the number of virtual machines; L1 and L2 are the parameters given by the update operation.

[0024] Furthermore, in step 5, the individual position is updated according to formula (7):

[0025]

[0026] Where floor represents rounding down, X(n) represents the mapping relationship between tasks and processor nodes at the current iteration number, U represents a constant, and 1e4 is scientific notation, which can be 10,000. When the number of loops is less than half of the total number of iterations, the plm rule is used for updating; otherwise, the lm rule is used for updating.

[0027] Furthermore, the three candidate solutions in step 6 are updated using formula (8), and the four candidate solutions are updated using formula (9):

[0028] P(i+1)=|ceil(D(i)*(F+rand4)-R(i)+p(i))mod m| if P2≥rand P2 (8)

[0029]

[0030]

[0031] Furthermore, the 5-category candidate solutions in step 7 are updated using formula (10), and the 6-category candidate solutions are updated using formula (11):

[0032]

[0033] P(i+1)=|ceil(R(i)-|d(t)|*F*levy(d))mod m| if P3 <rand P3 (11)

[0034] Where B1(i) represents the best task scheduling solution for the first group in the current iteration, B2(i) represents the best task scheduling solution for the second group in the current iteration; d(t) represents the difference between the current task scheduling solution and the best task scheduling solutions for the two groups in the current iteration, and levy(d) is a regular update mechanism.

[0035] Furthermore, in step 8, the individual positions that overflow the boundary range are updated according to formula (12):

[0036]

[0037] Among them, betarnd means generating random numbers that obey the betarnd distribution. Indicates that the value of the i-th row and j-th column of the updated individual vector in the t-th iteration exceeds the total number of tasks.

[0038] Furthermore, in step 9, the individual positions are updated according to equations (13) and (14):

[0039]

[0040] angle=arccos(Sim(Task,Vm)) (14)

[0041] Among them, T OverloadVm Indicates the actual task load on the overloaded virtual machine, Indicates the average load on the overloaded virtual machine, TR avail (UnderloadVM) indicates the remaining available resources on the lightly loaded virtual machine. represents the average available resources on a lightly loaded virtual machine, and n represents the dimension of the individual vector.

[0042] Furthermore, the regular update mechanism levy(d) step size is generated by equation (15):

[0043]

[0044] Among them, the parameters V~N obey the (0,1) distribution, and the parameters μ~N obey the (0,σ 2 ) distribution, and the parameter value σ 2 Obtained from formula (16):

[0045]

[0046] Where Γ is the Gama function and λ = 1.5.

[0047] The above technical solution adopted by the present invention has the following advantages compared with the prior art:

[0048] 1. MAVOA marks candidate solutions into different categories in each iteration and uses different update formulas, which is conducive to obtaining the globally optimal candidate solution and the optimal fitness value, so as to better schedule platform resources in heterogeneous cloud environments.

[0049] 2. The mutation mechanism in MAVOA can enhance the algorithm's exploration capabilities, preventing the optimal candidate solution and optimal cost value from being stuck in a local optimum in some cases, effectively increasing the robustness of solving cloud task scheduling problems.

[0050] 3. The present invention can obtain an excellent scheduling solution, better meet the needs of cloud platforms and users, and effectively reduce scheduling costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] Figure 1 A flowchart of the design method for optimizing task scheduling based on the multi-objective MAVOA algorithm in heterogeneous cloud environments;

[0052] Figure 2 The optimal solution diagram for the overall goal obtained by MAVOA in the task scheduling problem in heterogeneous cloud environments;

[0053] Figure 3 This is the optimal span graph obtained by MAVOA under 100 synthetic task datasets;

[0054] Figure 4 The resource execution cost graph obtained by MAVOA under 100 synthetic task datasets;

[0055] Figure 5 This is the system energy consumption diagram obtained by MAVOA under 100 synthetic task datasets;

[0056] Figure 6The load balance diagram obtained by MAVOA under 100 synthetic task datasets. DETAILED DESCRIPTION

[0057] In order to make the purpose, technical solutions and advantages of this application more clearly understood, this application is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application. That is, the embodiments described are only part of the embodiments of this application, not all of them.

[0058] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for protection, but merely represents selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making any creative efforts shall fall within the scope of protection of the present application.

[0059] To demonstrate the effectiveness of the method proposed in this invention, the following example is selected for comparative calculation. This task scheduling problem involves four mathematical models, including optimal span, resource execution cost, system energy consumption, and load balancing.

[0060] Example 1

[0061] like Figure 1 As shown, the present application provides a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment, specifically including:

[0062] Step 1: Model the task scheduling problem in a heterogeneous cloud environment, determine the optimization objectives and constraints, and obtain the objective function of the task scheduling problem, such as Equations (17), (18), (19), and (20):

[0063]

[0064]

[0065]

[0066]

[0067] Formula (21) represents the total function of the multi-objective optimization function.

[0068] f(x)=min{F1, F2, F3, F4} (21)

[0069] Step 2: Set the maximum number of iterations maxiterations = 500 and the population size N = 50, and obtain the initial population X. The individuals in the population represent the mapping relationship between tasks and processor nodes. Each individual Xi The position corresponds to a candidate solution, X ij It represents the value of the jth dimension of the i-th candidate solution, that is, the i-th task is bound to the processor node j;

[0070] Step 3: Evaluate the population according to the objective function of the task scheduling problem; obtain the fitness value F of each candidate solution; update the current best candidate solution BestX, SecondBestX and the best fitness value BestF, SecondBestF;

[0071] Step 4: Obtain the judgment value P1, mark the candidate solutions whose fitness value F is greater than 1 and whose judgment value P1 is greater than the random number rand as Class 1 candidate solutions, mark the candidate solutions whose fitness value F is greater than 1 and whose judgment value P1 is less than or equal to the random number rand as Class 2 candidate solutions, and update the Class 1 candidate solutions and Class 2 candidate solutions according to formulas (1) and (2);

[0072] Step 5: When the optimal fitness value BestF of the tth iteration t and the optimal fitness value BestF of the t-1th iteration t-1 When they are equal, the mutation count count is increased by 1; when the mutation count count accumulates to the set value 10, an individual position update occurs according to formula (7), at this time the mutation count count is returned to 0, and the process goes to step 9;

[0073] Step 6: Obtain the judgment value P2, mark the candidate solutions whose fitness value F is greater than or equal to 0.5 and less than 1 and whose judgment value P2 is greater than or equal to the random number rand as Class 3 candidate solutions; mark the candidate solutions whose fitness value F is greater than or equal to 0.5 and less than 1 and whose judgment value P2 is less than the random number rand as Class 4 candidate solutions, and update the Class 3 candidate solutions and Class 4 candidate solutions according to Formulas (8) and (9);

[0074] Step 7: Obtain the judgment value P3, mark the candidate solutions whose fitness value F is less than 0.5 and whose judgment value P3 is greater than or equal to the random number rand as 5-category candidate solutions; mark the candidate solutions whose fitness value F is less than 0.5 and whose judgment value P3 is less than the random number rand as 6-category candidate solutions; and update the 5-category candidate solutions and 6-category candidate solutions according to equations (10) and (11);

[0075] Step 8: Use the local scheduling strategy based on the Metropolis criterion to optimize the non-dominated solutions in the population, and update the individual positions of the overflow boundary range according to formula (12), and then update the population;

[0076] Step 9: Classify processing nodes through dynamic thresholds, migrate tasks through the modified cosine similarity load balancing strategy, balance system resource utilization, and update individual positions according to equations (13) and (14);

[0077] Step 10: Determine whether the maximum number of iterations, 500, has been reached. If so, proceed to step 11; otherwise, return to step 3.

[0078] Step 11: Obtain the optimal candidate solution BestX and the optimal fitness value BestF. The optimal candidate solution BestX is the optimal mapping relationship between tasks and processor nodes, and the optimal fitness value BestF is the minimized platform cost of the objective function.

[0079] The present invention uses MATLAB to simulate the method under Intel(R) Core(TM) i5-10500 3.10GHz CPU and 16.00GB memory, Windows 10 operating environment. In order to compare the robustness of the algorithm, each algorithm is run independently 30 times, and the average value after running 30 times is taken as the evaluation index. The comparative algorithms include ant colony algorithm (ACO), particle swarm algorithm (PSO), whale optimization algorithm (WOA), IWC (improved whale optimization algorithm), and African vulture optimization algorithm (AVOA). Finally, the optimal solution of the objective function of 100 synthetic task sets is obtained as follows Figure 2 :

[0080] MAVOA obtains the optimal span, resource execution cost, system energy consumption and load balancing under 100 synthetic task datasets. Figure 3-5 As shown in the figure, the MAVOA algorithm achieves the best optimal values ​​across all objective functions, demonstrating that the multi-objective MAVOA algorithm-based task scheduling optimization method in heterogeneous cloud environments can significantly reduce platform service costs in practical designs. A comparison of average values ​​reveals that the multi-objective MAVOA algorithm-based task scheduling optimization method achieves the best average value, demonstrating its good performance and robustness.

[0081] The foregoing descriptions of specific exemplary embodiments of the present invention are for purposes of illustration and description. These descriptions are not intended to limit the invention to the precise forms disclosed, and it is apparent that many variations and modifications are possible in light of the foregoing teachings. The exemplary embodiments have been selected and described for the purpose of explaining the specific principles of the invention and their practical application, thereby enabling those skilled in the art to realize and utilize a variety of exemplary embodiments of the invention and various options and modifications. The scope of the invention is intended to be defined by the claims and their equivalents.

Claims

1. A multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment, characterized by: include: Step 1: Model the task scheduling problem in a heterogeneous cloud environment, determine the optimization objectives and constraints, and obtain the objective function of the task scheduling problem; Step 2: Set maxiterations and the number of populations N, and obtain the initial population X. The individuals in the population represent the mapping relationship between tasks and processor nodes. Each individual X i The position corresponds to a candidate solution, X ij It represents the value of the jth dimension of the i-th candidate solution, that is, the i-th task is bound to the processor node j; Step 3: Evaluate the population according to the objective function of the task scheduling problem; obtain the fitness value F of each candidate solution; update the current best candidate solution BestX, SecondBestX and the best fitness value BestF, SecondBestF; Step 4: Obtain the judgment value P1, mark the candidate solutions whose fitness value F is greater than 1 and whose judgment value P1 is greater than the random number rand as Class 1 candidate solutions, mark the candidate solutions whose fitness value F is greater than 1 and whose judgment value P1 is less than or equal to the random number rand as Class 2 candidate solutions, and update the Class 1 candidate solutions and Class 2 candidate solutions; Step 5: When the optimal fitness value BestF of the tth iteration t and the optimal fitness value BestF of the t-1th iteration t-1 If they are equal, the mutation count count is increased by 1; when the mutation count count accumulates to the set value, an individual position update occurs, at which time the mutation count count is returned to 0, and the process goes to step 9; Step 6: Obtain the judgment value P2, mark the candidate solutions whose fitness value F is greater than or equal to 0.5 and less than 1 and whose judgment value P2 is greater than or equal to the random number rand as Class 3 candidate solutions; mark the candidate solutions whose fitness value F is greater than or equal to 0.5 and less than 1 and whose judgment value P2 is less than the random number rand as Class 4 candidate solutions, and update the Class 3 candidate solutions and Class 4 candidate solutions; Step 7: Obtain the judgment value P3, mark the candidate solutions whose fitness value F is less than 0.5 and whose judgment value P3 is greater than or equal to the random number rand as 5-category candidate solutions; mark the candidate solutions whose fitness value F is less than 0.5 and whose judgment value P3 is less than the random number rand as 6-category candidate solutions; and update the 5-category candidate solutions and 6-category candidate solutions; Step 8: Use the local scheduling strategy based on the Metropolis criterion to optimize the non-dominated solutions in the population, and update the positions of individuals that overflow the boundary range, thereby updating the population; Step 9: Classify processing nodes using dynamic thresholds, use the modified cosine similarity load balancing strategy to migrate tasks between overloaded and underloaded processing nodes, balance system resource utilization, and update individual positions. Step 10: Determine whether the maximum number of iterations has been reached. If so, proceed to step 11; otherwise, return to step 3. Step 11: Obtain the optimal candidate solution BestX and the optimal fitness value BestF. The optimal candidate solution BestX is the optimal mapping relationship between tasks and processor nodes, and the optimal fitness value BestF is the minimized platform cost of the objective function.

2. According to claim 1, a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment is characterized in that: In step 4, the candidate solutions of category 1 are updated using formula (1), and the candidate solutions of category 2 are updated using formula (2): P(i+1)=|ceil(R(i)-F*|2*rand*R(i)-P(i)|)mod m| if P1≥rand P1 (1) P(i+1)=|ceil(R(i)-F+rand2*((ub-lb)*rand3+lb))mod m|if P1<rand P1 (2) Among them, rand is a random number between (0,1), ceil is rounded up, R(i) is one of the best vultures, and the best vulture is the optimal mapping relationship between tasks and processor nodes under the current number of iterations. P(i+1) is the vulture position vector in the next iteration, which is the mapping relationship between tasks and processor nodes after optimization adjustment. P(i) is the current vector position of the vulture, Iteration i represents the current number of iterations, maxiterations represents the maximum number of iterations, F represents the value that changes with the number of iterations, z is a random number between (-1,1), and h is a random number between (-2,2); ub and lb are the upper and lower bound vectors of the individual, m is the number of virtual machines; L1 and L2 are the parameters given by the update operation.

3. According to claim 1, a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment is characterized in that: In step 5, the individual position is updated according to formula (7): Where floor represents rounding down, X(n) represents the mapping relationship between tasks and processor nodes at the current iteration number, U represents a constant, and 1e4 is scientific notation. When the number of loops is less than half of the total number of iterations, the plm rule is used for updating; otherwise, the lm rule is used for updating.

4. According to claim 1, a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment is characterized in that: The three candidate solutions in step 6 are updated using formula (8), and the four candidate solutions are updated using formula (9): P(i+1)=|ceil(D(i)*(F+rand4)-R(i)+p(l))mod m| if P2≥rand P2 (8) 。 5. According to claim 1, a multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment is characterized in that: The 5-category candidate solutions in step 7 are updated using formula (10), and the 6-category candidate solutions are updated using formula (11): P(i+1)=|ceil(R(i)-|d(t)|*F*levy(d))mod m|if P3<rand P3 (11) Among them, B1(i) represents the best task scheduling solution for the first group in the current iteration, B2(i) represents the best task scheduling solution for the second group in the current iteration; d(t) represents the difference between the current task scheduling solution and the best task scheduling solutions for the two groups in the current iteration, and levy(d) is a regular update mechanism.

6. The multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment according to claim 1 is characterized in that: In step 8, the individual positions that overflow the boundary range are updated according to formula (12): Among them, betarnd means generating random numbers that obey the betarnd distribution. Indicates that the value of the i-th row and j-th column of the updated individual vector in the t-th iteration exceeds the total number of tasks.

7. The multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment according to claim 1 is characterized in that: In step 9, the individual positions are updated according to equations (13) and (14): angle=arccos(Sim(Task,Vm)) (14) Among them, T OverloadVm Indicates the actual task load on the overloaded virtual machine, Indicates the average load on the overloaded virtual machine, TR avail (UnderloadVM) indicates the remaining available resources on the lightly loaded virtual machine. represents the average available resources on a lightly loaded virtual machine, and n represents the dimension of the individual vector.

8. The multi-objective MAVOA algorithm optimization task scheduling method in a heterogeneous cloud environment according to claim 5 is characterized in that: The regular update mechanism levy(d) step size is generated by formula (15): Among them, the parameters V~N obey the (0,1) distribution, and the parameters μ~N obey the (0,σ 2 ) distribution, and the parameter value σ 2 Obtained from formula (16): Where Γ is the Gama function and λ = 1.5.

Citation Information

Patent Citations

  • Cloud computing task scheduling method based on improved genetic algorithm

    CN112181598A

  • Heterogeneous platform task scheduling method and system based on Q learning

    CN112256422A