A cloud workflow scheduling method based on an improved Battle Royale optimization algorithm

By improving the Battle Royale optimization algorithm and introducing the soldier aggregation index and single-point mutation strategy, the problems of inter-task dependency and budget constraints in cloud workflow scheduling are solved, the workflow execution time and cost are optimized, and the search efficiency and solution quality are improved.

CN114924841BActive Publication Date: 2025-09-16BEIJING INST OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210685971.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-16
Publication Date
2025-09-16
Estimated Expiration
2042-06-16

AI Technical Summary

Technical Problem

Existing cloud workflow scheduling methods in cloud data center environments find it difficult to effectively reduce application execution span time or cost while satisfying inter-task dependency constraints and user budget constraints, and the search solution quality of existing algorithms needs to be further improved.

Method used

An improved Battle Royale optimization algorithm is adopted, and the soldier aggregation index and single-point mutation strategy are introduced. By comparing the soldier aggregation index and execution span time, local optimal detection and mutation operations are performed to optimize the workflow scheduling plan.

Benefits of technology

The algorithm's optimization speed and solution quality are improved, and it can optimize workflow execution time under user budget constraints, enhancing the diversity of search and the ability to discover the global optimal solution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114924841B_ABST
    Figure CN114924841B_ABST
Patent Text Reader

Abstract

This paper proposes a cloud workflow scheduling method based on an improved Battle Royale optimization algorithm. This method can optimize workflow execution time while satisfying user budget constraints, solving workflow application scheduling problems in cloud data center environments. The method introduces the concept of a soldier clustering index. By comparing fitness values, the clustering index of each soldier is calculated and compared with a pre-set threshold to determine whether the soldiers are clustered together, allowing timely measures to be taken to avoid the search from falling into a local optimal solution. For soldiers whose clustering index reaches the threshold, the element value of a certain dimension in their position is mutated based on probability. This mutation introduces randomness, allowing for the search to be conducted near clustered individuals for better solutions. Furthermore, after multiple iterations of accumulated mutations, some individuals can be forced to escape the local optimal solution, enhancing search diversity and effectively improving the algorithm's optimization speed and the quality of finding the optimal solution.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of cloud computing technology, and in particular to a cloud workflow scheduling method based on an improved Battle Royale optimization algorithm. Background Art

[0002] In recent years, with the development and increasing application of cloud computing, more and more scientific applications are being deployed on cloud platforms. Users no longer need to invest in expensive hardware, software, or maintenance costs. Instead, they simply connect to the Internet to access elastic, shared resource pools, obtain computing resources on demand, and pay only for what they use.

[0003] In cloud data center environments, workflow scheduling is the process of assigning and executing tasks with dependencies within a workflow to a specific set of computing resources. This process aims to meet user Quality of Service (QoS) requirements while also improving the profitability of the cloud service provider. Therefore, allocating the most appropriate computing resources to different workflow tasks while minimizing the application execution span time or cost while satisfying inter-task dependency constraints and user-specified budget or deadline constraints has become a pressing issue for cloud data center resource management. Cloud workflow scheduling is a typical NP-hard problem, currently primarily addressed using heuristic and metaheuristic algorithms. Heuristic algorithms, such as HEFT, Min-Min, and Min-Max, are designed for specific problem characteristics or application scenarios. While simple to use, they cannot guarantee optimal solutions and have poor generalization capabilities. Metaheuristic algorithms based on random search techniques, such as genetic algorithms (GA), battle royal optimization (BRO), particle swarm optimization (PSO), and ant colony optimization (ACO), have good applicability. However, their drawbacks are: evolutionary algorithms like GA and ACO have good global search capabilities, but the search time is too long; swarm intelligence optimization algorithms like BRO and PSO converge quickly but lack effective local search mechanisms, resulting in relatively poor optimization performance. Therefore, the quality of search solutions in existing cloud workflow scheduling methods needs to be further improved. Summary of the Invention

[0004] In view of this, the present invention proposes a cloud workflow scheduling method based on an improved Battle Royale optimization algorithm, which can optimize the workflow execution time while meeting the user's budget constraints and solve the workflow application scheduling problem in the cloud data center environment.

[0005] To achieve the above objectives, the present invention provides a cloud workflow scheduling method based on an improved Battle Royale optimization algorithm, comprising the following steps: modeling input workflow tasks with budget constraints and available virtual machine resources for leasing; initializing a population and parameters; calculating the workflow execution span time, makespan, and execution cost of each soldier in the population, and defining a specific formula for determining individual performance; and updating each individual in the population to update the entire population.

[0006] The updated population is aggregated with soldiers, and the aggregation index of each soldier is calculated. Soldiers are selected in turn in the entire population and compared with other soldiers in terms of their execution span time makespan. If the makespan of the two soldiers is the same, the aggregation index of the soldier is increased by 1. It is judged whether the aggregation index of each soldier reaches the aggregation threshold. If it reaches the threshold, the aggregated soldiers are mutated according to probability. If it does not reach the threshold, it is judged whether the number of iterations reaches the iteration threshold for changing the soldier's rebirth range. If it reaches it, the rebirth range is updated, and then it is judged whether the number of iterations reaches the preset upper limit. Otherwise, it is directly judged whether the number of iterations reaches the preset upper limit. If the maximum number of iterations is reached, the optimal scheduling plan in the entire population is taken as the result and output. If the maximum number of iterations is not reached, each individual in the population is updated again and the subsequent steps are executed until the maximum number of iterations is reached.

[0007] Among them, all soldiers whose aggregation index reaches the threshold are subjected to single-point mutation based on normal distribution.

[0008] Among them, the specific method of updating each individual in the population is: select soldiers in turn and compare them with the nearest soldiers according to the specific formula for comparing individual advantages and disadvantages. The worse soldiers are injured. When the injury value of the injured soldier reaches a preset threshold, the soldier is reborn; otherwise, the position of the soldier is updated, the makespan and cost corresponding to the soldier are recalculated, and compared with the best individual in the population according to the specific formula for comparing individual advantages and disadvantages. The winner is used to replace the best individual, and all individuals are traversed in turn to achieve the update of the entire population.

[0009] The specific formula for defining the comparison of individual advantages and disadvantages is as follows:

[0010]

[0011] Among them, ">" means "better than", makespan(X i )、makespan(X j ) represent individual X i 、X j The workflow execution span time of the corresponding scheduling scheme, cost(X i )、cost(Xj ) represent individual X i 、X j The workflow execution cost corresponding to the scheduling scheme.

[0012] The workflow execution span time makespan corresponding to each individual is calculated according to the following formula:

[0013]

[0014] Among them, T is the set of all subtasks of the workflow, t m represents the mth task in the set T, FT(t m ) represents task t m The completion time is calculated as follows:

[0015] FT(t m )=ST(t m )+CT(t m )+TT(t m )

[0016] Among them, ST(t m ) represents task t m The start time, CT(t m ) represents task t m The execution delay time, TT(t m ) represents task t m The sum of the transmission time between and all its subtasks is calculated as follows:

[0017]

[0018]

[0019]

[0020]

[0021] Among them, RT(r k ) represents the virtual machine r k Available time, t m Represents task t m The set of all parent tasks, len(t m ) represents task t m The instruction length, p(r k ) represents the virtual machine r k processing power, Represents task t m The set of all subtasks of Data(t m ,t n ) represents task tm and its subtask t n W represents the bandwidth of the communication line between virtual machines.

[0022] The cost calculation formula is as follows:

[0023]

[0024]

[0025] Among them, vc k Represents the kth virtual machine r k The rental price, RST k and RFT k Represents virtual machine r k The lease start and end time, Indicates the round-up function, cost k Represents virtual machine r k The total rental cost of K is the total number of virtual machines, τ is the billing time unit of the virtual machine, and τ = 1 second.

[0026] Among them, the injured soldier X dam The specific way to regenerate in each dimension is as follows:

[0027] X dam,g =X dam,g +(X best,g -X dam,g )*rand(0,1)

[0028] X dam,g =Lb g +(Ub g -Lb g )*rand(0,1)

[0029] Among them, X dam,g Indicates the g-th dimension element value of the injured soldier, X best,g Indicates the g-th dimension element value of the optimal soldier in the population, Lb g 、Ub g Respectively represent the lower and upper limits of the rebirth range in the g-th dimension.

[0030] Among them, when updating each individual in the population again, the iteration threshold Δ of the rebirth range and its dimension lower limit Lb g and upper limit Ub g , respectively updated according to the following formulas:

[0031]

[0032] Lb g =Xbest,g -SD g

[0033] Ub g =X best,g +SD g

[0034] Among them, SD g Represents the standard deviation of the element values ​​of the g-th dimension of all individual soldiers in the population.

[0035] Beneficial effects

[0036] 1. This invention applies an improved Battle Royale optimization algorithm to discrete optimization problems, introducing the concept of a soldier clustering index. By comparing fitness values, the clustering index of each soldier is calculated and compared with a pre-set threshold to determine whether the soldiers are clustered together. This allows timely action to prevent the search from falling into a local optimal solution, providing a new solution for workflow scheduling in a cloud computing environment. For soldiers whose clustering index reaches the threshold, the invention probabilistically mutates the element value of a certain dimension in their position. This introduction of randomness through mutation allows for searching for better solutions near clustered individuals and, after multiple iterations of accumulated mutations, allows certain individuals to escape the local optimum, enhancing search diversity and effectively improving the algorithm's optimization speed and the quality of finding the optimal solution.

[0037] 2. In view of the characteristics of the single-point mutation strategy that "a single mutation can search locally to find a better solution, and multiple mutations can jump out of the local optimum and discover the global optimum", the present invention adopts a single-point mutation operation on the aggregated soldiers during the evolution process, that is, searching in the vicinity of the aggregated soldiers, so that the aggregated individuals can disperse and explore in a larger global range, enhance the diversity of the search, so that after multiple iterations, they can jump out of the local optimum and converge to the global optimal solution, accelerate the convergence of the algorithm and further improve the quality of finding the solution.

[0038] 3. This invention uses Amazon EC2's resource billing method. Since we used small and medium-sized workflows for experimental verification, we found that some types of workflows have a make span of less than 60 seconds. If a span less than 60 seconds were billed as a 60-second increment, it would be impossible to compare the scheduling performance of different algorithms. Therefore, we ignored the 60-second minimum limit and billed it in increments per second, which is more accurate and convenient.

[0039] 4. In the present invention, when each individual in the population is updated again, the iteration threshold of the rebirth range and its lower and upper limits of the dimension are updated. The update of the lower and upper limits of the dimension is related to the standard deviation of the element values ​​of the dimension of all soldier individuals in the population. As the number of iterations increases, the algorithm continuously narrows the rebirth range to gradually approach the optimal individual X in the population. bestIn the early stages of the iteration, the algorithm focuses on large-scale exploration of the entire solution space, aiming to find a better local search area from a global perspective. In the later stages of the iteration, as the algorithm converges, it focuses more on exploiting and utilizing smaller areas, performing local searches near the best individuals to find better solutions. The narrowing of the rebirth range will cause the reborn individuals to land closer to the optimal solution of the population, effectively performing a local search near the optimal solution. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 This is a flow chart of the cloud workflow scheduling method of the present invention.

[0041] Figure 2 The following is a simple structural diagram of four workflow models.

[0042] Figure 3 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under Montage_50.

[0043] Figure 4 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under Montage_100.

[0044] Figure 5 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under CyberShake_50.

[0045] Figure 6 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under CyberShake_100.

[0046] Figure 7 A comparison chart of the experimental results of workflow execution span time and execution cost under Epigenomics_46 using different scheduling algorithms.

[0047] Figure 8 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under Epigenomics_100.

[0048] Figure 9 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under Inspiral_50.

[0049] Figure 10 A comparison chart of the experimental results of workflow execution span time and execution cost under Inspiral_100 for different scheduling algorithms. DETAILED DESCRIPTION

[0050] The present invention is described in detail below with reference to the accompanying drawings and embodiments.

[0051] The present invention provides a cloud workflow scheduling method based on an improved Battle Royale optimization algorithm, and designs a cloud workflow scheduling strategy based on the Battle Royale optimization algorithm. The basic idea is: on the basis of the BRO algorithm framework, a local optimal detection method based on aggregated soldier statistics and an aggregated soldier variation strategy are introduced, and an improved Battle Royale optimization (MBRO) algorithm is proposed to handle workflow scheduling problems in a cloud environment, while meeting the workflow budget constraints specified by the user, and optimizing the execution span time of the workflow. The flowchart of the present invention is as follows: Figure 1 As shown, the specific steps include:

[0052] Step 1: Model the input workflow tasks with budget constraints and available virtual machine resources, including the following sub-steps:

[0053] Step 1.1, workflow task modeling. This invention addresses the cloud workflow scheduling problem and describes the workflow task as a directed acyclic graph G = (T, E). The directed acyclic graph G = (T, E) consists of a node set T and a directed edge set E. The node set is T = {t1, t2, ..., t a}, representing a task in the cloud workflow; the directed edge set is E = { <t m ,t n >|t m ,t n ∈T}, <t m ,t n > represents task t in a directed acyclic graph m With subtask t n The dependency relationship between subtasks t n Only in its parent task t m Completed execution and received t m Execution can only begin after all data has been transferred.

[0054] Step 1.2: Cloud resource modeling. The cloud resources used in the present invention are virtual machines provided by the IaaS cloud, where the available resource set is represented by R = {VM1, VM2, ..., VM k ,...,VM f}, where k = (1, 2, ... f), and f represents the number of virtual machines available for user rental. k The processing speed is expressed in millions of machine language instructions that the device can process per second, recorded as MIPS. k .

[0055] Step 2: Population initialization and parameter initialization, as follows:

[0056] In the present invention, each individual in the population corresponds to a workflow scheduling scheme, and the index of each dimension element of the individual represents the subtask number of the workflow, and the value of each dimension element of the individual represents the number of the virtual machine that executes this task in the list of available resources (wherein the resource is generally a virtual machine). Population initialization is to initialize each individual in the population. The individual initialization process is: using the number of tasks in the workflow, the number of available virtual machines and the predefined population size, randomly generate population individuals in sequence until the pre-set number of individuals is reached. The specific process of individual initialization is: using uniformly distributed random numbers according to formula (1), randomly set the value of each dimension element of the individual within the optional range That is, N initial scheduling plans X are generated i , construct the initial population P. Where i is the index of the individual, i = (1, 2, ..., N); j is the index of each individual dimension element, that is, the workflow task number, j = (1, 2, ..., M), and M is the total number of workflow tasks.

[0057]

[0058] Here, rand(0,1) represents a double-precision random number between 0 and 1, and U and L are the upper and lower limits of the available virtual machine numbers, respectively.

[0059] Parameter initialization: Initialize the soldier damage threshold, soldier mutation rate, soldier aggregation threshold, and the maximum number of iterations of the population. In this embodiment, the initial setting is that the damage threshold α = 10, the mutation rate β = 0.5, and the aggregation threshold H = 10. The iteration threshold is initialized according to formula (2):

[0060]

[0061] Among them, MaxIter represents the maximum number of iterations of the population, round() represents the rounding function, and ceil() represents the floor function.

[0062] Step 3: Calculate the workflow execution span time makespan and workflow execution cost cost corresponding to all individuals in the entire population P, and define the specific formula for comparing the pros and cons of individuals.

[0063] The workflow execution span time makespan corresponding to each individual can be calculated according to the following formula:

[0064]

[0065] Among them, T is the set of all subtasks of the workflow, t m represents the mth task in the set T, FT(t m ) represents task t mThe completion time is calculated as follows:

[0066] FT(t m )=ST(t m )+CT(t m )+TT(t m ) (4)

[0067] Among them, ST(t m ) represents task t m The start time, CT(t m ) represents task t m The execution delay time, TT(t m ) represents task t m The sum of the transmission time between and all its subtasks is calculated as follows:

[0068]

[0069]

[0070]

[0071]

[0072] Among them, RT(r k ) represents the virtual machine r k Available time, t m Represents task t m The set of all parent tasks, len(t m ) represents task t m The instruction length, p(r k ) represents the virtual machine r k processing power, Represents task t m The set of all subtasks of Data(t m ,t n ) represents task t m and its subtask t n W represents the bandwidth of the communication line between virtual machines.

[0073] This paper uses Amazon EC2's resource billing method. Since we used small and medium-sized workflows for experimental verification, we found that some types of workflows have execution spans less than 60 seconds. If spans less than 60 seconds are converted to 60-second billing, it would be impossible to compare the scheduling performance of different algorithms. Therefore, we ignore the minimum 60-second limit and bill in increments of one second. The cost calculation formula is as follows:

[0074]

[0075]

[0076] Among them, vc k Represents the kth virtual machine r k The rental price, RST k and RFT k Represents virtual machine r k The lease start and end time, Represents the rounding up function, that is, rounding up to an integer, cost k Represents virtual machine r k The total rental cost of K is the total number of virtual machines, τ is the billing time unit of the virtual machine, and τ = 1 second.

[0077] The specific formula for defining the comparison of individual advantages and disadvantages is as follows:

[0078]

[0079] Among them, ">" means "better than", makespan(X i )、makespan(X j ) represent individual X i 、X j The workflow execution span time of the corresponding scheduling scheme, cost(X i )、cost(X j ) represent individual X i 、X j The workflow execution cost corresponding to the scheduling scheme.

[0080] Step 4: Update each individual in the population to update the entire population. This involves selecting soldiers one by one and comparing them to their nearest soldiers. The weaker soldiers are then damaged. When the damage value of a wounded soldier reaches a pre-set threshold, the soldier is reborn. Otherwise, the soldier's position is updated, and the corresponding makespan and cost are recalculated. At the same time, the individual's strengths and weaknesses are compared with the best individual in the population using a specific formula. The winner is then used to replace the best individual. This process is repeated through all individuals to update the entire population. The specific process is as follows:

[0081] Step 4.1: Traverse the soldier individuals X in the population P one by one i , by calculating the distance between it and other individuals in the population, find the distance soldier X i Recent Soldier X j The distance calculation formula is as follows:

[0082]

[0083] Among them, Di,j Indicates Soldier X i and Soldier X j The distance between i,g 、X j,g Represents soldier X respectively i and X j The g-th dimension element value of .

[0084] Step 4.2: Use formula (11) to calculate soldier X i and its most recent Soldier X j Compare and call the worse soldiers injured soldiers, denoted by X dam If X dam The damage value of the injured soldier X does not reach the threshold, according to formula (13) dam Perform location update; if X dam The damage value of the injured soldier X reaches the threshold, and the injured soldier X is treated as dam Rebirth in every dimension.

[0085] X dam,g =X dam,g +(X best,g -X dam,g )*rand(0,1) (13)

[0086] X dam,g =Lb g +(Ub g -Lb g )*rand(0,1) (14)

[0087] Among them, X dam,g Indicates the g-th dimension element value of the injured soldier, X best,g Indicates the g-th dimension element value of the optimal soldier in the population, Lb g 、Ub g Respectively represent the lower and upper limits of the rebirth range in the g-th dimension.

[0088] Step 4.3: Use formula (11) to convert the injured soldier X dam and the optimal soldier X best Compare. If X dam Better than X best , then use X dam Replace X best .

[0089] Step 5: Count the soldiers gathered in the updated population and calculate the aggregation index of each soldier. In the entire population P, select soldiers X i , and with other soldiers X j Compare their execution span time makespan. If the makespan of the two is the same, then Xi The clustering index h i Increase by 1. By traversing the clustering indexes of all soldiers in population P, we can see that soldiers with the same clustering index h cluster together. Determine whether the clustering index h of each soldier reaches the clustering threshold H. If it does, it means that the algorithm has fallen into a local optimum, and proceed to step 6. If it does not, proceed to step 7.

[0090] Step 6: Perform single-point mutation based on normal distribution on all soldiers whose aggregation index reaches the threshold. Specifically: for each soldier X whose aggregation index reaches the threshold H, i Generate a random number. If the random number is less than the mutation probability β, then randomly select X i The element value of a dimension g′ is mutated. The mutation formula is as follows:

[0091]

[0092] Among them, Gauss(0,1) represents a Gaussian distributed random number with a mean of 0 and a variance of 1, and X i,g′ Represents individual X i The g′th dimension element value of M represents the number of dimensions of the soldier’s position, X’ i,g′ Represents X i,g′ The value of the element in the g′th dimension after mutation.

[0093] The evolutionary mechanism of the original BRO shows that all soldiers move toward the optimal solution for the population, making the search prone to falling into local optimal solutions. To this end, the present invention detects soldier clustering during the evolution process and applies mutation operations to clustered soldiers. By changing their search positions, they evolve in different directions, thereby escaping the local optimal solution and exploring better solutions over a wider range. Given that the single-point mutation strategy has the characteristics of "a single mutation can search for a better solution locally, and multiple mutations can escape the local optimal solution and discover the global optimal solution," the present invention applies a single-point mutation operation to clustered soldiers during the evolution process. That is, the search is performed in the area near the clustered soldiers, allowing the clustered individuals to disperse their exploration over a larger global range, enhancing the diversity of the search. After multiple iterations, the algorithm escapes the local optimal solution and converges to the global optimal solution, effectively improving the algorithm's optimization speed and the quality of the optimal solution.

[0094] Step 7: After the detection and mutation of the clustered soldiers, the population is updated once. Determine whether the number of iterations reaches the iteration threshold Δ of the soldier rebirth range change. If it reaches, the rebirth range is updated and then step 8 is executed. Otherwise, step 8 is executed directly without any processing. Specifically, the dimension lower limit Lb of the rebirth range is g and dimension upper limit Ub g Update, and the iteration threshold Δ of the rebirth range and its dimension lower limit Lbg and upper limit Ub g , respectively updated according to the following formulas:

[0095]

[0096] Lb g =X best,g -SD g (17)

[0097] Ub g =X best,g +SD g (18)

[0098] Among them, SD g Represents the standard deviation of the element values ​​of the g-th dimension of all individual soldiers in the population.

[0099] It should be noted that as the number of iterations increases, the algorithm continuously narrows the rebirth range to gradually approach the optimal individual X of the population. best This is because: in the early stages of the iteration, the algorithm focuses more on large-scale exploration of the entire solution space, finding a better local search area from a global perspective; in the later stages of the iteration, as the algorithm converges, it focuses more on exploiting and utilizing smaller areas, that is, conducting local searches near the best individuals to find better solutions. The narrowing of the rebirth range will cause the reborn individuals to fall closer to the optimal solution of the population, that is, conducting local searches near the optimal solution of the population.

[0100] Step 8: Determine whether the number of iterations has reached the preset upper limit. If not, go to step 4; otherwise, output the optimal scheduling solution in the entire population as the result.

[0101] To verify the effectiveness of the improved Battle Royale Optimizer (MBRO) algorithm for solving cloud workflow scheduling problems, we used the cloud workflow simulation tool WorkflowSim to simulate cloud data centers and workflow tasks. The following algorithms were selected for comparison: genetic algorithm (GA), particle swarm optimization (PSO), and the original Battle Royale Optimizer (BRO). Figure 2 The following is a simple structural diagram of four workflow models.

[0102] For workflow models of different scales, the present invention uses a certain number of 6 virtual machines with different processing capabilities (ECUs) to conduct experiments under 3 budget constraint factors (λ=1, 1.5 and 2.5), and uses the workflow execution span time makespan and cost corresponding to the solution generated by the algorithm as scheduling performance indicators to evaluate the performance of the algorithm. Taking into account the elasticity of the cloud, different numbers of virtual machines are provided for workflows of different scales. For small-scale workflows (about 50 tasks), 8 virtual machines are used; for medium-scale workflows (about 100 tasks), 16 virtual machines are used. Since all the above algorithms are metaheuristic algorithms based on random search, in order to avoid the randomness of the results, each algorithm is run 20 times for statistical analysis, and the scheduling success rate, execution span time makespan and cost are selected as evaluation indicators. The comparison results of the makespan and cost average values ​​of the corresponding scheduling schemes are shown in the figure below. Figures 3 to 10 shown, specifically, Figure 3 Comparison chart of workflow execution span time and execution cost experimental results of different scheduling algorithms under Montage_50; Figure 4 Comparison chart of workflow execution span time and execution cost experimental results of different scheduling algorithms under Montage_100; Figure 5 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under CyberShake_50; Figure 6 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under CyberShake_100; Figure 7 Comparison chart of experimental results of workflow execution span time and execution cost of different scheduling algorithms under Epigenomics_46; Figure 8 Comparison chart of experimental results of workflow execution span time and execution cost of different scheduling algorithms under Epigenomics_100; Figure 9 A comparison chart of the experimental results of workflow execution span time and execution cost of different scheduling algorithms under Inspiral_50; Figure 10 This chart compares the workflow execution span time and execution cost of different scheduling algorithms under Inspiral_100. Table 1 shows the scheduling success rates of different algorithms for workflows of different types and sizes and with different budget constraints.

[0103] Depend on Figure 3As shown in Table 1, for small-scale Montage workflows, under the budget constraint factor of λ = 1, MBRO achieves a higher scheduling success rate than the GA and BRO algorithms. Although the success rate of MBRO is the same as that of the PSO algorithm, the makespan corresponding to the solution searched by MBRO is smaller. Under the constraint factor of λ = 1.5, the success rate of the MBRO algorithm is higher than that of the GA and BRO algorithms, but lower than that of the PSO algorithm, but the makespan of the solution searched by the MBRO algorithm is smaller. Under the constraint factor of λ = 2.5, the success rate of the MBRO algorithm is the same as that of the GA and PSO algorithms, but the makespan of the solution searched by MBRO is smaller.

[0104] Depend on Figure 4 As shown in Table 1, for the medium-scale Montage workflow, under the constraint factor of λ = 1, only the MBRO algorithm can search for a feasible solution. Under the constraint factor of λ = 1.5, although the comparison algorithm can find a feasible solution, the MBRO algorithm achieves a higher scheduling success rate. Under the constraint factor of λ = 2.5, the MBRO algorithm achieves the same success rate as the GA and PSO algorithms, but MBRO achieves better optimization performance, that is, the solution found has a smaller makespan.

[0105] Depend on Figure 5 、 Figure 6 As shown in Table 1, for medium and small-scale CyberShake workflows, the MBRO algorithm achieves a higher scheduling success rate under the constraint factors of λ = 1 and 1.5. Under the constraint factor of λ = 2.5, the comparison algorithm can also find a feasible solution, but compared with the GA algorithm, the solution searched by the MBRO algorithm has a smaller makespan.

[0106] Depend on Figure 7 、 Figure 8 As shown in Table 1, for medium- and small-scale epigenomics workflows, both MBRO and the comparison algorithms were able to find feasible solutions that satisfied the constraints under the constraint factors λ = 1.5 and 2.5, but the solutions found by MBRO had smaller makespans. For small-scale epigenomics workflows under the constraint factor λ = 1.5, although MBRO's scheduling success rate was lower than that of the GA algorithm, the solutions found by MBRO had smaller makespans. For medium-scale epigenomics workflows under the constraint factor λ = 1, neither MBRO nor the comparison algorithms found a feasible solution.

[0107] Depend on Figure 9 、 Figure 10As shown in Table 1, for small-scale inspiral workflows, under the three constraint factors, MBRO, GA, and PSO algorithms all find feasible solutions, but the solution found by MBRO has a smaller makespan. For medium-scale inspiral workflows, under different constraint factors, MBRO and GA algorithms both find feasible solutions, but the solution found by MBRO has a smaller makespan.

[0108] Table 1 Comparison of scheduling success rates of different scheduling algorithms that meet budget constraints

[0109]

[0110] In summary, compared with the baseline algorithm, MBRO achieves a higher scheduling success rate and is able to search for a solution that reduces the workflow execution time makespan, which illustrates the superiority of the MBRO algorithm.

[0111] In summary, the above are only preferred embodiments of the present invention and are not intended to limit the scope of protection of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.

Claims

1. A cloud workflow scheduling method based on an improved Battle Royale optimization algorithm, characterized in that, The following steps are involved: Modeling the input workflow tasks with budget constraints and available virtual machine resources for leasing; initializing the population and parameters; calculating the workflow execution span time makespan and execution cost cost of each soldier in the population, defining a specific formula for individual performance; updating each individual in the population to achieve the update of the entire population; The updated population is aggregated and the aggregation index of each soldier is calculated: soldiers are selected from the entire population and their execution span time makespan is compared with that of other soldiers. If the makespan of the two soldiers is the same, the aggregation index of the soldier is increased by 1. The aggregation index of each soldier is judged to see whether it reaches the aggregation threshold. If it reaches the threshold, the aggregated soldiers are mutated according to the probability. If the threshold is not reached, it is determined whether the number of iterations reaches the iteration threshold for changing the soldier's rebirth range. If so, the rebirth range is updated, and then it is determined whether the number of iterations reaches the preset upper limit. Otherwise, it is directly determined whether the number of iterations reaches the preset upper limit. If the maximum number of iterations is reached, the optimal scheduling plan in the current entire population is taken as the result and output. If the maximum number of iterations is not reached, each individual in the population is updated again and the subsequent steps are executed until the maximum number of iterations is reached. All soldiers whose aggregation index reaches the threshold are subjected to single-point mutation based on normal distribution in turn; The specific method of updating each individual in the population is as follows: soldiers are selected in turn and compared with the nearest soldier according to the specific formula for individual comparison. The inferior soldier is damaged. When the damage value of the injured soldier reaches a pre-set threshold, the soldier is reborn; otherwise, the position of the soldier is updated, the makespan and cost corresponding to the soldier are recalculated, and the individual is compared with the best individual in the population according to the specific formula for individual comparison. The winner is used to replace the best individual, and all individuals are traversed in turn to achieve the update of the entire population; To the wounded soldier X dam The specific way to regenerate in each dimension is as follows: X dam,g =X dam,g +(X best,g -X dam,g )*rand(0,1) X dam,g =Lb g +(Ub g -Lb g )*rand(0,1) Among them, X dam,g Indicates the g-th dimension element value of the injured soldier, X best,g Indicates the g-th dimension element value of the optimal soldier in the population, Lb g 、Ub g Respectively represent the lower and upper limits of the rebirth range in the gth dimension; When updating each individual in the population again, the iteration threshold Δ of the rebirth range and its dimension lower limit Lb g and upper limit Ub g to update.

2. The method according to claim 1, wherein The specific formula for defining the comparison of individual advantages and disadvantages is as follows: Among them, ">" means "better than", makespan(X i )、makespan(X j ) represent individual X i 、X j The workflow execution span time of the corresponding scheduling scheme, cost(X i )、cost(X j ) represent individual X i 、X j The workflow execution cost corresponding to the scheduling scheme.

3. The method according to claim 1 or 2, wherein: The workflow execution span time makespan corresponding to each individual is calculated according to the following formula: Among them, T is the set of all subtasks of the workflow, t m represents the mth task in the set T, FT(t m ) represents task t m The completion time is calculated as follows: FT(t m )=ST(t m )+CT(t m )+TT(t m ) Among them, ST(t m ) represents task t m The start time, CT(t m ) represents task t m The execution delay time, TT(t m ) represents task t m The sum of the transmission time between and all its subtasks is calculated as follows: Among them, RT(r k ) represents the virtual machine r k Available time, · t m Represents task t m The set of all parent tasks, len(t m ) represents task t m The instruction length, p(r k ) represents the virtual machine r k processing power, Represents task t m The set of all subtasks of Data(t m ,t n ) represents task t m and its subtask t n The size of the data files transmitted between virtual machines, W represents the bandwidth of the communication line between virtual machines; VM k represents the kth virtual machine in the set of available virtual machines, k = 1, 2, ... f, and f represents the number of available virtual machines.

4. The method according to claim 1 or 2, wherein: The cost calculation formula is as follows: Among them, vc k Represents the kth virtual machine r k The rental price, RST k and RFT k Represents virtual machine r k The lease start and end time, Indicates the round-up function, cost k Represents virtual machine r k The total rental cost of K is the total number of virtual machines, τ is the billing time unit of the virtual machine, and τ = 1 second.

5. The method according to claim 1 or 2, wherein: When updating each individual in the population again, the iteration threshold Δ of the rebirth range and its dimension lower limit Lb g and upper limit Ub g , respectively updated according to the following formulas: Lb g =X best,g -SD g Ub g =X best,g +SD g Among them, SD g Represents the standard deviation of the element values ​​of the g-th dimension of all individual soldiers in the population; round() represents the rounding function.

Citation Information

Patent Citations

  • A computing intensive cloud workflow scheduling method based on an owl search algorithm

    CN109710372A

  • Cloud workflow scheduling method based on improved poverty-rich optimization algorithm

    CN113220414A