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 PDF

Info

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
Application number
CN202110435961.5A
Other languages
Chinese (zh)
Other versions
CN113220414A (en
Inventor
李慧芳
黄经纬
鲁本
王一竹
王彬阳
邹伟东
柴森春
夏元清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202110435961.5A priority Critical patent/CN113220414B/en
Publication of CN113220414A publication Critical patent/CN113220414A/en
Application granted granted Critical
Publication of CN113220414B publication Critical patent/CN113220414B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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

Cloud workflow scheduling method based on improved lean-rich optimization algorithm
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:
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 task numbers of workflows, and the element values are 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):
Figure RE-GDA0003100388970000021
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
Figure RE-GDA0003100388970000022
Wherein,
Figure RE-GDA0003100388970000023
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
Figure RE-GDA0003100388970000024
Wherein, X i For the ith individual in the enriched population,
Figure RE-GDA0003100388970000025
is the average individual in the enriched population,
Figure RE-GDA0003100388970000031
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.4, adding 1 to i; if it is
Figure RE-GDA0003100388970000032
Then step 6.1 is executed;
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 is
Figure RE-GDA0003100388970000041
Then let β add to 1 by itself,
Figure RE-GDA0003100388970000042
is a variation alternation threshold; otherwise, beta remains unchanged;
if it is
Figure RE-GDA0003100388970000043
Then α is 1; otherwise, let alpha be 0.08,
Figure RE-GDA0003100388970000044
is an adaptive variation threshold.
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:
step 1, modeling a calculation intensive workflow task with budget constraint and virtual machine resources available for lease.
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 range
Figure RE-GDA0003100388970000061
Namely, 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.
Figure RE-GDA0003100388970000062
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:
Figure RE-GDA0003100388970000063
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:
Figure RE-GDA0003100388970000071
Figure RE-GDA0003100388970000072
Figure RE-GDA0003100388970000073
Figure RE-GDA0003100388970000074
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:
Figure RE-GDA0003100388970000075
Figure RE-GDA0003100388970000076
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;
Figure RE-GDA0003100388970000077
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:
Figure RE-GDA0003100388970000081
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:
Figure RE-GDA0003100388970000082
Figure RE-GDA0003100388970000083
X step ={Step,…,Step} (13)
wherein, Step represents the Step length,
Figure RE-GDA0003100388970000084
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:
Figure RE-GDA0003100388970000091
Figure RE-GDA0003100388970000092
wherein,
Figure RE-GDA0003100388970000093
representing the average individual of a rich population,
Figure RE-GDA0003100388970000094
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:
Figure RE-GDA0003100388970000095
Figure RE-GDA0003100388970000096
wherein,
Figure RE-GDA0003100388970000097
denotes a new individual, X i ∈P r
Figure RE-GDA0003100388970000098
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.
Figure RE-GDA0003100388970000099
Wherein,
Figure RE-GDA00031003889700000910
denotes a new individual, X i ∈P m
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.
Figure RE-GDA00031003889700000911
Wherein,
Figure RE-GDA0003100388970000101
denotes a new individual, X i ∈P p
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
Figure RE-GDA0003100388970000102
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.
If it is
Figure RE-GDA0003100388970000103
Then step 5.1 is executed; otherwise, step 5.4 is performed.
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)
Figure RE-GDA0003100388970000111
wherein, rand (0, 1-rand) 1 ) Represents 0 to 1-rand 1 A double-precision random number in between,
Figure RE-GDA0003100388970000112
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 into
Figure RE-GDA0003100388970000113
And replacing X with the new individual obtained i
And 5.3, adding 1 to i. If it is not
Figure RE-GDA0003100388970000114
Step 5.1 is performed.
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 is
Figure RE-GDA0003100388970000115
Then let β self-add 1; otherwise, the value of beta is not changed. Wherein,
Figure RE-GDA0003100388970000116
is the variation alternation threshold.
And 5.4.3, updating the adaptive mutation probability alpha. If it is
Figure RE-GDA0003100388970000117
Let α equal to 1; otherwise, let α be 0.08. Wherein,
Figure RE-GDA0003100388970000118
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):
Figure FDA0003696314140000011
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
Figure FDA0003696314140000012
Wherein,
Figure FDA0003696314140000013
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
Figure FDA0003696314140000014
Wherein, X i For the ith individual in the enriched population,
Figure FDA0003696314140000021
is the average individual in the enriched population,
Figure FDA0003696314140000022
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.4, enabling i to be added by 1; if it is
Figure FDA0003696314140000023
Then step 6.1 is executed;
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 is
Figure FDA0003696314140000031
Then let β add to 1 by itself,
Figure FDA0003696314140000032
is a variation alternation threshold; otherwise, beta remains unchanged;
if it is
Figure FDA0003696314140000033
Then α is 1; otherwise, let alpha be 0.08,
Figure FDA0003696314140000034
is an adaptive variation threshold.
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.
CN202110435961.5A 2021-04-22 2021-04-22 Cloud workflow scheduling method based on improved lean-rich optimization algorithm Active CN113220414B (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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