CN113220414B - Cloud workflow scheduling method based on improved lean-rich optimization algorithm - Google Patents
Cloud workflow scheduling method based on improved lean-rich optimization algorithm Download PDFInfo
- Publication number
- CN113220414B CN113220414B CN202110435961.5A CN202110435961A CN113220414B CN 113220414 B CN113220414 B CN 113220414B CN 202110435961 A CN202110435961 A CN 202110435961A CN 113220414 B CN113220414 B CN 113220414B
- Authority
- CN
- China
- Prior art keywords
- population
- individuals
- individual
- workflow
- algorithm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 57
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000005457 optimization Methods 0.000 title claims abstract description 25
- 230000035772 mutation Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 8
- 239000013067 intermediate product Substances 0.000 claims description 7
- 230000003044 adaptive effect Effects 0.000 claims description 6
- 238000003491 array Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 12
- 230000007246 mechanism Effects 0.000 abstract description 6
- 101800000535 3C-like proteinase Proteins 0.000 description 4
- 101800002396 3C-like proteinase nsp5 Proteins 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012163 sequencing technique Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000002068 genetic effect Effects 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention discloses a cloud workflow scheduling method based on an improved lean-rich optimization algorithm, which introduces a midwifery population on the basis of the existing lean-rich optimization (PRO) algorithm, and applies a local search strategy in the updating process of the midwifery population, so that the possibility that the algorithm is trapped into local optimum is avoided while the search diversity is increased; meanwhile, in an enriched population iterative updating mechanism, optimal enriched individuals and optimal midwifery individuals are respectively adopted to guide population evolution, and each individual is updated to generate two new individuals, so that the search space is expanded, and the diversity of the population is increased.
Description
Technical Field
The invention belongs to the technical field of cloud computing, and particularly relates to a cloud workflow scheduling method based on an improved lean-rich optimization algorithm.
Background
In recent years, with the popularization and the deepening of applications of cloud computing, more and more scientific applications are deployed to a cloud platform to run. Therefore, a user can remotely access the configurable shared computing resource pool to obtain massive computing resources as required without investing a large amount of hardware cost and only by connecting a network.
Workflow scheduling in a cloud environment is a process of allocating tasks having dependencies in workflows to specific computing resources and executing, and aims to guarantee user quality of service (qos) requirements and guarantee benefits of cloud service providers. Therefore, how to allocate the most appropriate computing resource to the cloud workflow task meets the budget constraint of the user and reduces the execution span time as much as possible, which becomes a problem that needs to be solved urgently by each cloud service provider.
Currently, workflow scheduling methods are mainly classified into heuristic methods and meta-heuristic methods. The heuristic method is an optimization algorithm based on visual or empirical construction and provided for a certain specific problem, such as HEFT, BHEFT, MIN-MAX and the like, and the optimal solution is difficult to obtain. The meta-heuristic method is an intelligent optimization algorithm based on random search, which is provided for general problems, such as a lean-rich optimization algorithm, a genetic algorithm, an ant colony algorithm, a particle swarm algorithm and the like. The intelligent optimization algorithms such as the lean-rich optimization algorithm, the particle swarm algorithm, the ant colony algorithm and the like have good global search capability, but lack an effective local search mechanism; evolutionary algorithms such as genetic algorithm can effectively keep the diversity of search, but the time complexity is higher.
Disclosure of Invention
In view of this, the invention provides a cloud workflow scheduling method based on an improved lean-rich optimization algorithm, which can realize single-target optimized scheduling of compute-intensive cloud workflows in a cloud environment.
The invention provides a cloud workflow scheduling method based on an improved lean-rich optimization algorithm, which comprises the following steps:
b (lambda) is budget constraint corresponding to the constraint factor lambda, and zeta is the maximum value of the double-precision floating point number;
Wherein,for the best individual in the enriched population, X step Is a vector whose dimension is equal to the number of tasks and whose elements are Step, Step being the Step size, Δ min To set minimum step size, Δ max In order to set the maximum step length, theta is the current iteration frequency, and theta is the preset iteration frequency;
calculating the poor population model phi by adopting a formula (3) p :
Wherein, X i For the ith individual in the enriched population,is the average individual in the enriched population,is the worst individual in the enriched population; n is the number of individuals of the population;
step 5, adopting the intermediate product populationRespectively updating the enriched population with the optimal individuals in the enriched population and the optimal individuals in the enriched population; adopting the model phi of the intermediate product population m Guiding and updating the midwifery population; adopting the poverty population model phi p Guiding and updating the poor population;
adding all the generated new individuals into the population P;
step 6, updating the individuals in the population P by adopting a variation algorithm;
step 7, adding 1 to the iteration times theta, and executing step 3 if theta is not more than theta; otherwise, outputting the optimal scheduling scheme in the current population P as a cloud workflow scheduling scheme.
Further, the updating of the individuals in the population P by using a variation algorithm in the step 6 includes the following steps:
step 6.1, for individual X in the population P i Generating uniformly distributed random numbers rand (0, 1); if rand (0,1) > alpha, then not updating and making i self-add 1, executing step 6.1; otherwise, executing step 6.2; alpha is the variation probability, and the initial value of alpha is 0.08;
step 6.2, randomly determining a starting point Start of the intersection position, and then setting an End point End to Start + length; if End is less than M, then the index is set to [ Start +1, End ]]The dimension of the element in the interval is defined as an intersection position X' i (ii) a If End > M, the index is located at [1, End-a]And [ Start +1, a]The dimension of the element in the interval is defined as an intersection position X' i M is the total task number of the workflow; length is the cross length, and length is a set constant;
step 6.3, if (β mod2) ≠ 1, then from the existing enriched population P at random according to the cross position determined in step 6.2 r In which two different individuals X are selected h 、X z And X i Performing a crossover operation; if (β mod2) ═ 1, then the existing rich individuals and X are randomly selected based on the crossover position determined in step 6.2 i Performing cross mutation operation; beta is a variation type parameter, and the initial value of beta is 0;
step 6.5, if the current global optimal solution is equal to the global optimal solution of the previous generation, the iteration times mu are added by 1; otherwise, making the iteration number zero, and executing the step 7;
if it isThen let β add to 1 by itself,is a variation alternation threshold; otherwise, beta remains unchanged;
Further, in the step 6.3, if (β mod2) ≠ 1, then a mutation operation based on the triangle intersection is performed according to the intersection position determined in the step 6.2.
Further, in the step 6.3, if (β mod2) ═ 1, a mutation operation based on the linear intersection is performed according to the intersection position determined in the step 6.2.
Has the advantages that:
1. according to the method, the intermediate-yield population is introduced on the basis of the existing lean-rich optimization (PRO) algorithm, and a local search strategy is applied in the updating process of the intermediate-yield population, so that the possibility that the algorithm falls into local optimum is avoided while the search diversity is increased; meanwhile, in an enriched population iterative updating mechanism, optimal enriched individuals and optimal midwifery individuals are respectively adopted to guide population evolution, and each individual is updated to generate two new individuals, so that the search space is expanded, and the diversity of the population is increased.
2. According to the method, when the algorithm is trapped in local optimum or global optimum solution and is not updated for multiple times in the iteration process, the self-adaptive mutation strategy with evolutionary perception is adopted, and the randomness is introduced by changing the algorithm searching mechanism, so that the algorithm jumps out of the local optimum, and the searching efficiency is improved.
Drawings
Fig. 1 is a flowchart of a cloud workflow scheduling method based on an improved lean-rich optimization algorithm provided by the invention.
Figure 2 is a simple schematic representation of the Epigenomics workflow model architecture.
Fig. 3 is a comparison diagram of the execution span time and the execution cost experimental results of the workflows under the epiphenomics _46 workflow of the improved lean-rich optimization algorithm-based cloud workflow scheduling method and different scheduling algorithms provided by the present invention.
Fig. 4 is a comparison graph of experimental results of execution span time and execution cost of workflows under the epiphenomics _100 workflow of the improved lean-rich optimization algorithm-based cloud workflow scheduling method and different scheduling algorithms provided by the invention.
Fig. 5 is a comparison diagram of experimental results of execution span time and execution cost of workflows under an epiphenomics _997 workflow by the cloud workflow scheduling method based on the improved lean-rich optimization algorithm and different scheduling algorithms.
Fig. 6 is a comparison graph of success rates of the cloud workflow scheduling method based on the improved lean-rich optimization algorithm and different scheduling algorithms in operation under different budget constraint factors and different scales of epiphenomics workflows.
Fig. 7 is a schematic process diagram of the cross operation of the cloud workflow scheduling method based on the improved lean-rich optimization algorithm provided by the invention.
Detailed Description
The invention is described in detail below by way of example with reference to the accompanying drawings.
The invention provides a cloud workflow scheduling method based on an improved lean-rich optimization algorithm, which has the basic idea that: on the basis of a PRO algorithm framework, a midwifery population is introduced and an evolutionary perception mutation strategy is designed, and an improved lean-rich optimization (MPRO) algorithm is provided and is used for processing the problem of computing-intensive workflow scheduling in a cloud environment so as to optimize the total execution span time of a workflow while meeting the workflow budget constraint specified by a user.
The invention provides a cloud workflow scheduling method based on an improved lean-rich optimization algorithm, which specifically comprises the following steps as shown in fig. 1:
And 1.1, modeling a workflow task. Aiming at the problem of computing intensive cloud workflow scheduling, the workflow task is modeled into a directed acyclic graph G which is equal to (T, E). Wherein, G is composed of a node set T and a directed edge set E. The node set T represents M tasks in the workflow to be scheduled, i.e., T ═ T 1 ,t 2 ,...,t M }; the directed edge set is E { < t { (L) } m ,t n >|t m ,t n E.g., T }, where < T m ,t n Denotes task t in G m With its subtask t n The dependency relationship between, i.e. t n Only at its parent task t m Execution may begin after execution is complete. Tasks without a parent, called ingress tasks, are denoted t entry Tasks without subtasks are called egress tasks and are denoted as t exit 。
And 1.2, modeling the cloud resource. The invention adopts a model provided by an IaaS cloud service provider, and the available virtual machine resource set of the model is represented as R ═ { R ═ R 1 ,r 2 ,...,r k ,...,r K K is the number of virtual machines which can be rented by the user, and r is the virtual machine k Is expressed in terms of the number of million machine language instructions per second that the device can process, denoted as p (r) k ) And K ═ K (1, 2.. K).
And 2, initializing the population.
And 2.1, individual initialization.
In the invention, each individual of the population corresponds to a workflow scheduling scheme, each dimension element index of the individual represents the task number of the workflow, and each dimension element value of the individual represents the number of a virtual machine executing the task in an available resource list. Wherein the resource is typically a virtual machine.
The invention adopts the following individual initialization mode, and the specific process is as follows: using uniformly distributed random numbers according to formula (1), setting the value of each dimension element of the individual in a selectable rangeNamely, N initial scheduling schemes X are generated i And constructing an initial population P. Wherein i is an index of an individual, i 1, 2.., N; j is an index of each individual dimension element, namely a workflow task number, j is 1,2, …, and M is the total number of tasks of the workflow.
Wherein rand (0,1) represents a double-precision random number between 0 and 1, and U and L are respectively the upper limit and the lower limit of the number of the available virtual machine.
And 2.2, initializing parameters.
The initial adaptive mutation probability α is 0.08, the mutation type parameter β is 0, and the crossover length is set to a fixed value length.
And 3, calculating the fitness of all individuals in the whole population P, namely calculating the corresponding workflow execution span time, execution cost and fitness of each individual in the whole population in turn.
Step 3.1, calculating workflow execution span time makespan, wherein the workflow execution span time makespan corresponding to each individual can be calculated according to the following formula:
wherein T is a set formed by all subtasks of the workflow, and T m Represents the m-th task in the set T, FT (T) m ) Representing a task t m The calculation formula of (c) is as follows:
FT(t m )=ST(t m )+CT(t m )+TT(t m ) (3)
wherein, ST (t) m ) Representing a task t m Start time of (c), CT (t) m ) Representing a task t m Is performed with a delay time of TT (t) m ) Representing a task t m And the sum of the transmission time between all the subtasks, the calculation formula is as follows:
wherein, RT (r) k ) Representing a virtual machine r k The time of availability of (a) is, · t m representing a task t m Of all parent tasks, len (t) m ) Representing a task t m Length of instruction, p (r) k ) Representing a virtual machine r k Processing capacity of t m · Representing a task t m All subtask sets of (1), Data (t) m ,t n ) Representing a task t m And its subtask t n The size of the data file to be transferred between the virtual machines, and W represents the bandwidth of the communication line between the virtual machines.
And 3.2, calculating the execution cost of the workflow. The invention adopts the resource charging mode of Amazon EC2, namely, the charging is carried out according to increment per second, and the minimum time is 60 seconds. The workflow execution cost calculation formula corresponding to each individual is as follows:
wherein vc is k Representing a virtual machine r k A rental unit price of; RST k And RFT k Respectively represent virtual machines r k Rental start and rental end times;represents a round-up function, i.e., rounding up to an integer; cost k Representing a virtual machine r k Total rental cost of; k represents the total number of virtual machines; τ is a charging time unit of the virtual machine, and τ is 1 second.
And 3.3, calculating the fitness. The fitness corresponding to each individual can be calculated according to the following formula:
wherein, B (lambda) represents the budget constraint corresponding to the constraint factor lambda, and zeta is the maximum value of the double-precision floating point number.
And 4, dividing the whole population into three sub-populations and respectively updating the sub-populations. Namely: dividing the population into rich populations P according to the fitness of the individual fitness and the corresponding workflow execution span time makespan r And midwifery group P m And poor population P p (ii) a Second, the rich population P is utilized r Calculating the model phi of the midwifery population from the individual information m And poor population model phi p (ii) a Finally, different updating mechanisms are adopted to respectively carry out on the three sub-populations P r 、 P m And P p And (6) updating. The method comprises the following specific steps:
4.1, sequencing the whole population P according to the individual fitness and makespan, wherein the individuals with larger fitness are sequenced in the front; when the temperature is higher than the set temperatureWhen multiple individuals have the same fitness, then the individuals with the smaller makespan rank first. Taking the individuals ranked at the top N as a new population P, and taking the individuals ranked at the top 1/3 in P as a rich population P r And the individuals in the middle 1/3 of the population P sequencing are taken as the midwifery population P m 1/3 individuals after the population P is sorted are taken as poor population P p 。
And 4.2, calculating a midyield population model and a poor population model. Namely: respectively calculating the model phi of the midwifery population by utilizing the individual information in the rich population m And poor population model phi p So as to guide the update of the midwifery population and the poor population.
Step 4.2.1, calculating the model phi of the intermediate product population m . In the invention, the model of the intermediate product population phi m The calculation formula of (a) is as follows:
X step ={Step,…,Step} (13)
wherein, Step represents the Step length,representing the best individual of a rich population, X step Vector, Δ, representing a number of tasks equal in dimension and equal in value to Step for all elements min And Δ max Respectively representing the minimum step length and the maximum step length which are set artificially, theta represents the current iteration frequency, and theta represents the preset iteration frequency.
Step 4.2.2, calculating the poverty population model phi p . In the present invention, the poor population model phi p The calculation formula of (a) is as follows:
wherein,representing the average individual of a rich population,the representation is the worst individual with a rich population.
Step 4.3, adopting different updating mechanisms to respectively carry out the three sub-populations P r 、P m And P p And (6) updating. The specific process is as follows:
step 4.3.1, update Rich population P r . P is respectively paired with the optimal individual of the midwifery population and the optimal individual of the rich population according to the formulas (16) and (17) r The individual of (1) updates:
wherein,denotes a new individual, X i ∈P r ,Represents the optimal individual of the midwifery population.
Step 4.3.2, update the Zhongsheng population P m . Adopting a midwifery population model phi m Against the midwifery population P according to the formula (18) m The individual in (1) guides and updates.
Step 4.3.3, update poverty population P p . Adopting poverty population model phi p For poor population P according to formula (19) p The individual in (1) guides and updates.
And 4.4, reserving all new individuals generated by population updating in the step 4.3. That is, all individuals resulting from the update are added to P, where P totals the total number of individuals
And 5, each individual in the population P is mutated one by one. Namely: from the first individual X in the entire population P i Starting (i equals 1), and updating operation is carried out one by one. The specific process is as follows:
step 5.1, for individual X i The search strategy is determined, i.e. a uniformly distributed random number rand (0,1) within the (0,1) interval is generated. There are two cases:
if rand (0,1) > alpha, making i self-add 1; otherwise, step 5.2 is performed. Wherein, alpha is the adaptive mutation probability.
Step 5.2, if the mutation type parameter (β mod2) ≠ 1, then step 5.2.2 is executed.
And 5.2.1, performing mutation operation based on linear intersection. Namely: randomly selecting an old rich individual and X i And performing cross mutation operation. The specific process is as follows:
first, the crossing location is determined. The starting point of the intersection position is randomly selected and marked as Start, and the End point is marked as End + length. If End is less than or equal to M, then X is added i The element index is located at [ Start +1, End]Dimension within interval is selected as cross position X' i (ii) a If End > M, then X is added i The element index is located at [1, End-a]And [ Start +1, a ]]Dimension within interval is selected as cross position X' i As shown in fig. 7.
Finally, X is added i Replacing the dimension value of the cross position with the dimension value of the corresponding position of the selected old rich individual to obtain a new individual, randomly changing the task-virtual machine mapping relation of any two positions of the new individual, and replacing X with the newly obtained new individual i (ii) a Step 5.3 is performed.
And 5.2.2, performing mutation operation based on triangular intersection. Namely: random Slave richness population P r In which two different individuals X are selected h 、X z And X i A crossover operation is performed. The specific process is as follows:
first, the individual crossover location is determined as described in step 5.2.1, and then X is mapped using the following equation i Is cross position X' i Updating:
rand 1 =rand(0,1) (20)
rand 2 =rand(0,1-rand 1 ) (21)
rand 3 =1-rand 1 -rand 2 (22)
wherein, rand (0, 1-rand) 1 ) Represents 0 to 1-rand 1 A double-precision random number in between,is X' i Updated intersection position, X' h And X' z Are each X h And X z And h ≠ z, X h ,X z ∈P r . Finally, X is i Is cross position X' i Is changed intoAnd replacing X with the new individual obtained i 。
And 5.4, updating beta and alpha. The method comprises the following specific steps:
and 5.4.1, updating the unchanged iteration times mu of the global optimal solution. If the current global optimal solution is equal to the global optimal solution of the previous generation, enabling mu to be added by 1; otherwise, let μ equal to 0, go to step 6.
And 5.4.2, updating the variation type parameter beta. If it isThen let β self-add 1; otherwise, the value of beta is not changed. Wherein,is the variation alternation threshold.
And 5.4.3, updating the adaptive mutation probability alpha. If it isLet α equal to 1; otherwise, let α be 0.08. Wherein,is an adaptive variation threshold.
And 6, judging whether the iteration times reach a preset upper limit. And adding 1 to the iteration number, namely adding 1 to theta. If theta is not greater than theta, executing the step 3; otherwise, the optimal scheduling scheme in the current whole population P is taken as a result and output.
In order to verify the effectiveness of the improved lean-rich optimization algorithm-based cloud workflow scheduling Method (MPRO), a cloud workflow simulation tool workflow Sim is used for simulating a cloud computing data center and workflow tasks, and the comparison algorithm selected in an experiment is as follows: a primary lean-rich optimization algorithm (PRO), a particle swarm algorithm (PSO), an ant colony Algorithm (ACO), and a Genetic Algorithm (GA).
Aiming at Epigenomics workflow models with different scales, a certain number of 6 virtual machines with different processing capacities (ECUs) are used for carrying out experiments under 4 budget constraint factors (0.5, 1, 1.5 and 2), and workflow execution span time makespan and cost corresponding to a solution generated by an algorithm are used as scheduling performance indexes to measure the performance of the algorithm. Given the elasticity of the cloud, the number of available virtual machines will vary depending on the size of the scheduled workflow. For small-scale workflows (about 50 tasks), 8 virtual machines are used; for medium-scale workflows (about 100 tasks), 17 virtual machines are used; for large-scale workflows (about 1000 tasks), 40 virtual machines are used. And sequencing each type of virtual machine according to the processing capacity from high to low, and generating an available virtual machine resource pool, wherein the virtual machines are arranged to be added in sequence according to a sequencing list. If the virtual machines are added for all times, the process is repeated until the number of the added virtual machines meets the requirement of the total number. In order to avoid randomness of experimental results, each algorithm runs 20 times of simulation respectively, calculates makespan and cost average values of the results corresponding to the scheduling scheme, and compares the makespan and cost average values, and the results are shown in fig. 3 to 5.
As can be seen from fig. 3, 4, 5, and 6, the MPRO algorithm and the comparison algorithm can search for a scheduling solution that satisfies the budget constraint under different scale workflow tasks and different budget constraint factors. However, compared to the comparative algorithm, the MPRO algorithm can search for a solution that makes the workflow execute across a time makespan smaller. The experimental results demonstrate the effectiveness of the method of the invention.
In summary, the above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (4)
1. A cloud workflow scheduling method based on an improved lean-rich optimization algorithm is characterized by comprising the following steps:
step 1, respectively modeling a calculation intensive workflow with budget constraint and a virtual machine resource;
step 2, establishing a population P, wherein individuals in the population are workflow scheduling schemes, the individuals are represented by one-dimensional arrays, the element indexes of the one-dimensional arrays are the task numbers of the workflows, and the element values are the virtual machine numbers for executing corresponding tasks; initializing the population;
step 3, calculating the workflow execution span time makespan and the execution cost of each individual in the population, and calculating the fitness of the individual by adopting a formula (1):
b (lambda) is budget constraint corresponding to the constraint factor lambda, and zeta is the maximum value of the double-precision floating point number;
step 4, dividing the population into rich populations P according to the fitness of the individual fitness and the workflow execution span time makespan r Midwifery population P m And poor population P p (ii) a Calculating the model phi of the intermediate product population by adopting a formula (2) m :
Wherein,is a stand forThe best individual in the population, X step Is a vector whose dimension is equal to the number of tasks and whose elements are Step, Step being the Step size, Δ min For a set minimum step size, Δ max In order to set the maximum step length, theta is the current iteration frequency, and theta is the preset iteration frequency;
calculating the poor population model phi by adopting a formula (3) p :
Wherein, X i For the ith individual in the enriched population,is the average individual in the enriched population,is the worst individual in the enriched population; n is the number of individuals of the population;
step 5, adopting the optimal individuals in the intermediate yield population and the optimal individuals in the enriched population to respectively update the enriched population; adopting the model phi of the intermediate product population m Guiding and updating the midwifery population; adopting the poor population model phi p Guiding and updating the poor population;
adding all the generated new individuals into the population P;
step 6, updating the individuals in the population P by adopting a variation algorithm;
step 7, the iteration times theta are added by 1, and if theta is not larger than theta, the step 3 is executed; otherwise, outputting the optimal scheduling scheme in the current population P as a cloud workflow scheduling scheme.
2. The cloud workflow scheduling method according to claim 1, wherein the updating of the individuals in the population P by using a mutation algorithm in the step 6 comprises the following steps:
step 6.1, for individual X in the population P i Generating uniformly distributed random numbers rand (0, 1); if rand (0,1) > alpha, not updating and making i self-add 1, executing step 6.1; otherwise, executing step 6.2; alpha is the variation probability, and the initial value of alpha is 0.08;
step 6.2, randomly determining a starting point Start of the intersection position, and then setting an End point End to Start + length; if End is less than M, then the index is set to [ Start +1, End ]]The dimension of the element in the interval is defined as the cross position X i '; if End > M, the index is located at [1, End-a]And [ Start +1, a ]]The dimension of the element in the interval is defined as the cross position X i ', M is the total number of tasks of the workflow; length is the cross length, and length is a set constant;
step 6.3, if (β mod2) ≠ 1, then based on the cross-over locations determined in step 6.2, randomly selecting from the existing enriched population P r In which two different individuals X are selected h 、X z And X i Performing a crossover operation; if (β mod2) ═ 1, then the existing rich individuals and X are randomly selected based on the crossover position determined in step 6.2 i Performing cross mutation operation; beta is a variation type parameter, and the initial value of beta is 0;
step 6.5, if the current global optimal solution is equal to the global optimal solution of the previous generation, the unchanged iteration times mu of the global optimal solution are added by 1; otherwise, making mu be zero, and executing the step 7;
if it isThen let β add to 1 by itself,is a variation alternation threshold; otherwise, beta remains unchanged;
3. The cloud workflow scheduling method according to claim 2, wherein in step 6.3, if (β mod2) ≠ 1, then performing triangle-based mutation according to the intersection position determined in step 6.2.
4. The cloud workflow scheduling method according to claim 2, wherein in step 6.3, if (β mod2) ═ 1, then a mutation operation based on linear intersection is performed according to the intersection position determined in step 6.2.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110435961.5A CN113220414B (en) | 2021-04-22 | 2021-04-22 | Cloud workflow scheduling method based on improved lean-rich optimization algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110435961.5A CN113220414B (en) | 2021-04-22 | 2021-04-22 | Cloud workflow scheduling method based on improved lean-rich optimization algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113220414A CN113220414A (en) | 2021-08-06 |
CN113220414B true CN113220414B (en) | 2022-09-09 |
Family
ID=77088607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110435961.5A Active CN113220414B (en) | 2021-04-22 | 2021-04-22 | Cloud workflow scheduling method based on improved lean-rich optimization algorithm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113220414B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710372A (en) * | 2018-11-12 | 2019-05-03 | 北京理工大学 | A kind of computation-intensive cloud workflow schedule method based on cat owl searching algorithm |
CN111813500A (en) * | 2020-07-09 | 2020-10-23 | 西北工业大学 | Multi-target cloud workflow scheduling method and device |
-
2021
- 2021-04-22 CN CN202110435961.5A patent/CN113220414B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710372A (en) * | 2018-11-12 | 2019-05-03 | 北京理工大学 | A kind of computation-intensive cloud workflow schedule method based on cat owl searching algorithm |
CN111813500A (en) * | 2020-07-09 | 2020-10-23 | 西北工业大学 | Multi-target cloud workflow scheduling method and device |
Non-Patent Citations (2)
Title |
---|
iCATS: Scheduling Big Data Workflows in the Cloud Using Cultural Algorithms;Seyed Ziae Mousavi Mojab 等;《2019 IEEE Fifth International Conference on Big Data Computing Service and Applications (BigDataService)》;20190926;第99-106页 * |
满足帕累托最优的多目标云工作流调度算法;何留杰等;《计算机应用与软件》;20190512(第05期);第289-297页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113220414A (en) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Alkayal et al. | Efficient task scheduling multi-objective particle swarm optimization in cloud computing | |
Hamad et al. | Genetic-based task scheduling algorithm in cloud computing environment | |
Xie et al. | An adaptive decoding biased random key genetic algorithm for cloud workflow scheduling | |
CN114756358B (en) | DAG task scheduling method, device, equipment and storage medium | |
Kaur et al. | Deep‐Q learning‐based heterogeneous earliest finish time scheduling algorithm for scientific workflows in cloud | |
Jayanetti et al. | Deep reinforcement learning for energy and time optimized scheduling of precedence-constrained tasks in edge–cloud computing environments | |
CN108320059B (en) | Workflow scheduling evolution optimization method and terminal equipment | |
Kamalinia et al. | Hybrid task scheduling method for cloud computing by genetic and DE algorithms | |
Xiao et al. | A cooperative coevolution hyper-heuristic framework for workflow scheduling problem | |
CN110008023B (en) | Cloud computing system budget constraint random task scheduling method based on genetic algorithm | |
Pooranian et al. | Hybrid metaheuristic algorithm for job scheduling on computational grids | |
Nadeem et al. | Optimizing execution time predictions of scientific workflow applications in the grid through evolutionary programming | |
Ren et al. | A branch-and-bound embedded genetic algorithm for resource-constrained project scheduling problem with resource transfer time of aircraft moving assembly line | |
Khajemohammadi et al. | Efficient workflow scheduling for grid computing using a leveled multi-objective genetic algorithm | |
CN115330189A (en) | Workflow optimization scheduling method based on improved moth flame algorithm | |
Chhabra et al. | QoS-aware energy-efficient task scheduling on HPC cloud infrastructures using swarm-intelligence meta-heuristics | |
Mikram et al. | HEPGA: a new effective hybrid algorithm for scientific workflow scheduling in cloud computing environment | |
CN116985146B (en) | Robot parallel disassembly planning method for retired electronic products | |
CN113504998A (en) | Method, device and equipment for determining task scheduling scheme | |
CN113220414B (en) | Cloud workflow scheduling method based on improved lean-rich optimization algorithm | |
CN117236427A (en) | Decision constraint rule characterization method for task actions | |
Fan et al. | Associated task scheduling based on dynamic finish time prediction for cloud computing | |
CN113220437B (en) | Workflow multi-target scheduling method and device | |
CN112328364B (en) | Computing-intensive cloud workflow scheduling method based on farmland fertility algorithm | |
Wang et al. | Gradient-Based Optimizer for Scheduling Deadline-Constrained Workflows in the Cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |