CN108320059B - Workflow scheduling evolution optimization method and terminal equipment - Google Patents

Workflow scheduling evolution optimization method and terminal equipment Download PDF

Info

Publication number
CN108320059B
CN108320059B CN201810154127.7A CN201810154127A CN108320059B CN 108320059 B CN108320059 B CN 108320059B CN 201810154127 A CN201810154127 A CN 201810154127A CN 108320059 B CN108320059 B CN 108320059B
Authority
CN
China
Prior art keywords
scheduling
chromosome
population
fitness
evolution
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
CN201810154127.7A
Other languages
Chinese (zh)
Other versions
CN108320059A (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.)
Shijiazhuang Tiedao University
Original Assignee
Shijiazhuang Tiedao University
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 Shijiazhuang Tiedao University filed Critical Shijiazhuang Tiedao University
Priority to CN201810154127.7A priority Critical patent/CN108320059B/en
Publication of CN108320059A publication Critical patent/CN108320059A/en
Application granted granted Critical
Publication of CN108320059B publication Critical patent/CN108320059B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • 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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Genetics & Genomics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Physiology (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention is suitable for the technical field of cloud computing and artificial intelligence, and provides a workflow scheduling evolution optimizing method and terminal equipment. The workflow scheduling evolution optimizing method comprises the following steps: designing a coding structure of multiple chromosome pairs; constructing a balanced mixed initialization population; adaptively calculating a relevant variable; performing a re-evolution operation; a scheduling policy is preferred. The workflow scheduling evolution optimizing method can provide a scheduling strategy meeting user requirements with higher deadline constraint satisfaction rate and lower execution cost, and provides reference implementation for constructing a workflow scheduling evolution optimizing system under the deadline constraint.

Description

Workflow scheduling evolution optimization method and terminal equipment
Technical Field
The invention belongs to the technical field of cloud computing and artificial intelligence, and particularly relates to a workflow scheduling evolution optimizing method and terminal equipment.
Background
Tasks in cloud computing increasingly exist in the form of workflows. Such workflows are typically data-intensive and compute-intensive applications. Since workflows have a large amount of data and computing requirements, cloud computing is required to provide high performance computing resources. Cloud computing dynamically provides computing resources as services to users in the form of virtual machines according to the needs of the users. The mode of providing resource service by cloud computing mainly comprises the following steps: infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). The infrastructure cloud provides services for users in a virtual resource pool mode, and computing resources are distributed for the workflow through a scheduling technology, so that the research focus in the fields of cloud computing and artificial intelligence is achieved.
Workflow scheduling in a cloud environment refers to a process of matching different computing resources for different computing tasks in a workflow according to computing requirements of users in a specific cloud environment and finding an optimal matching scheme. The method comprises the steps of carrying out resource allocation and optimization on tasks during workflow scheduling, obtaining a formulaic description of a workflow problem by extracting workflow task characteristics and mutual data dependency, modeling the workflow problem, allocating computing resources for the workflow problem, determining an allocation strategy to meet user requirements, and optimizing the workflow. Workflow scheduling attempts to establish a correspondence between computing tasks, computing resources, and user requirements, measuring their degree of adaptability. Scheduling is used for mapping between computing tasks and computing resources, for example, finding out the track of the change of the target optimization item from the change of the execution time and the execution expense between the computing tasks with different computing scales and the computing resources with different computing performances. In a cloud computing workflow scheduling system, workflow content is typically described in terms of node characteristics. In fact, a workflow based on cloud computing can be divided into three steps: workflow modeling, task resource mapping, and policy optimization.
Workflow scheduling is an important application of artificial intelligence, and the main purpose is to allocate and adjust required computing resources for computing tasks in a workflow, which can also be referred to as an optimization problem of resource scheduling under a constraint condition. The resource scheduling is mainly to allocate the computing resources in the computing resource pool. In general, resource scheduling optimization problem processing under constraint conditions is to use a penalty function to penalize an inappropriate scheduling strategy and convert a constraint problem into an unconstrained problem. In addition to the ongoing optimization and improvement of traditional scheduling algorithms, some evolutionary algorithms are also employed to generate near-optimal scheduling strategies. Rodriguez and Buyya provide a particle swarm optimization algorithm based on a meta heuristic optimization technology for scientific workflow scheduling in a cloud environment, the scheduling algorithm minimizes the overall execution cost under the condition that a deadline constraint condition is met, and some basic characteristics of IaaS in cloud computing, such as flexibility and isomerization of computing resources, are fully considered. However, the use of a penalty function for particles that do not satisfy the constraint condition in the algorithm is inferior to the use of legitimate particles, which may lead to premature convergence of the algorithm and fall into local optima. Li Liu et al propose a cooperative genetic algorithm CGA based on deadline constraints2Ensuring that the overall execution cost is minimized, enabling accelerated convergence and avoiding premature aging under the condition of satisfying the deadline constraint. However, the computation amount is increased by introducing the co-evolution operation into the algorithm, and meanwhile, due to the fact that the algorithm is a greedy strategy, the optimal value cannot be obtained according to the constraint requirement under certain conditions.
Disclosure of Invention
In view of this, embodiments of the present invention provide a workflow scheduling evolution optimizing method and a terminal device, so as to solve the problems of a low deadline constraint satisfaction rate and a high execution cost in the prior art.
In a first aspect of the embodiments of the present invention, a method for optimizing workflow scheduling evolution is provided, including:
step S1, selecting chromosomes in a genetic algorithm population as scheduling strategy information carriers according to user input parameters and workflow data, and designing an information coding structure of a multiple chromosome pair W by combining the population scale M, the calculation resource scale N and the workflow data; the user input parameters include an expiration constraint parameter;
step S2, according to any multiple chromosome pair of the information coding structure, circulating the single multiple chromosome pair construction process according to the construction method to form a balanced mixed initialization population with the scale of M;
step S3, initializing the population according to the balanced mixing, constructing an evolution process, adjusting the evolution direction according to the user input parameters, modifying the mean value according to the user input parameters and the original fitness to construct and improve the fitness, calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, performing gene operation on each chromosome, and storing the obtained scheduling strategy into a scheduling optimization strategy pool A;
step S4, using omega chromosomes in the optimization strategy pool A as the input of re-evolution operation under the constraint of deadline, adding M-omega chromosomes which are randomly generated, obtaining a re-evolution population as the input of the step S3, and iteratively executing re-evolution according to a set rule, wherein the obtained scheduling strategies are stored in a scheduling optimization strategy pool B;
and step S5, comprehensively evaluating each scheduling strategy of the scheduling optimizing strategy pool A and the scheduling optimizing strategy pool B, matching the deadline constraint condition, comparing the deadline constraint satisfaction rate and the execution cost, evaluating the algorithm execution efficiency, and finally judging the optimal scheduling strategy.
Alternatively, the information-encoding structure of the multiple chromosome pair W in step S1 contains 2 chromosomes in total, i.e.
Multiple chromosome pair W ═ chromesome1, chromesome2}
chromesome1=sequence of{Pc,Pm,gen0,gen1,…,genk,…,genL-1}
chromesome2={tof0,tof1,…,tofi,…,tofN-1}
Let the size of the execution sequence be g on the ith virtual machine, then tofiCan be expressed as:
Figure GDA0002433046180000031
wherein Pc is the adaptive crossover probability of the chromosome; pm is the self-adaptive mutation probability of the chromosome; genkIs a gene at the k position of the chromosome, k is more than or equal to 0<L;vmiFor the ith virtual machine in the computing resources, i is more than or equal to 0<N;tofiFor allocation to computing resources vmiThe sequence of computing task execution of (1); the code of the gene gen in the chromosome of chromesome1 is t (vm), which represents the allocation of computing resources vm for computing task t; the gene vm in chromosome 2 represents a computing resource, and the subsequent gene set { t } represents a computing task allocated to the computing resource vm.
Optionally, according to any multiple chromosome pair constructed by the information coding structure, a single multiple chromosome pair construction process is circulated according to a construction method to form a balanced mixed initialization population with the scale of M, and the specific process is as follows:
according to the chromosome pair coding structure obtained in step S1, assuming that the initialization population is constructed using k methods, x is constructed according to method 11Chromosome pairs, construct x according to method iiA chromosome pair, construct x according to method kkObtaining a balanced mixed initial population with the scale of M by a chromosome pair; wherein k is more than or equal to 2,
Figure GDA0002433046180000041
optionally, the fitness is improved according to the user input parameter and the original fitness modified mean structure, and the adaptive cross probability Pc and the adaptive variation probability Pm of each chromosome of the population in the evolution process are calculated according to the fitness, specifically, the process is as follows:
for the balanced hybrid initialization population, calculating an original fitness vector F of the chromosome according to a deadline constraintiniCorrecting the mean value according to the original fitness to construct an improved fitness vector Fimp
Subtracting the current improved adaptability value from the maximum improved adaptability value, and dividing by the difference between the maximum improved adaptability value and the improved adaptability correction mean value to obtain a probability intermediate variable Vmi
When the improved fitness value is smaller than the corrected mean value, the probability corrected variable takes the value of 1;
multiplying the relation between the improved fitness value and the modified mean value thereof by different parameters respectively, and marking as Pc;
taking M target chromosome samples, and repeating the processes to obtain M Pc values;
based on the same process, Pm can be obtained.
Optionally, the process of determining the preferred scheduling policy in step S5 is specifically as follows:
executing the steps S2, S3 and S4 on all chromosomes in the population to obtain a scheduling optimization strategy pool A and a scheduling optimization strategy pool B, and comparing the scheduling optimization strategy pool A and the scheduling optimization strategy pool B obtained in the steps S4 and S5 by taking the deadline constraint satisfaction rate as an evaluation standard;
determining a secondary constraint according to the user input information; the user input information further comprises secondary constraint information;
and if the fitness of a certain scheduling optimization strategy is optimal and does not violate the secondary deadline constraint or the violation deadline constraint degree is minimum relative to other scheduling optimization strategies, judging the scheduling optimization strategy as a target scheduling optimization strategy and giving a scheduling result.
In a second aspect of the embodiments of the present invention, there is provided a terminal device, including a memory and a processor, where the memory stores therein a computer program operable on the processor, and the processor implements the following steps when executing the computer program:
step S1, selecting chromosomes in a genetic algorithm population as scheduling strategy information carriers according to user input parameters and workflow data, and designing an information coding structure of a multiple chromosome pair W by combining the population scale M, the calculation resource scale N and the workflow data; the user input parameters include an expiration constraint parameter;
step S2, according to any multiple chromosome pair of the information coding structure, circulating the single multiple chromosome pair construction process according to the construction method to form a balanced mixed initialization population with the scale of M;
step S3, initializing the population according to the balanced mixing, constructing an evolution process, adjusting the evolution direction according to the user input parameters, modifying the mean value according to the user input parameters and the original fitness to construct and improve the fitness, calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, performing gene operation on each chromosome, and storing the obtained scheduling strategy into a scheduling optimization strategy pool A;
step S4, using omega chromosomes in the optimization strategy pool A as the input of re-evolution operation under the constraint of deadline, adding M-omega chromosomes which are randomly generated, obtaining a re-evolution population as the input of the step S3, and iteratively executing re-evolution according to a set rule, wherein the obtained scheduling strategies are stored in a scheduling optimization strategy pool B;
and step S5, comprehensively evaluating each scheduling strategy of the scheduling optimizing strategy pool A and the scheduling optimizing strategy pool B, matching the deadline constraint condition, comparing the deadline constraint satisfaction rate and the execution cost, evaluating the algorithm execution efficiency, and finally judging the optimal scheduling strategy.
Alternatively, the information-encoding structure of the multiple chromosome pair W in step S1 contains 2 chromosomes in total, i.e.
Multiple chromosome pair W ═ chromesome1, chromesome2}
chromesome1=sequence of{Pc,Pm,gen0,gen1,…,genk,…,genL-1}
chromesome2={tof0,tof1,…,tofi,…,tofN-1}
Suppose that station i is virtualOn the pseudo-machine, if the size of the execution sequence is g, then tofiCan be expressed as:
Figure GDA0002433046180000051
wherein Pc is the adaptive crossover probability of the chromosome; pm is the self-adaptive mutation probability of the chromosome; genkIs a gene at the k position of the chromosome, k is more than or equal to 0<L;vmiFor the ith virtual machine in the computing resources, i is more than or equal to 0<N;tofiFor allocation to computing resources vmiThe sequence of computing task execution of (1); the code of the gene gen in the chromosome of chromesome1 is t (vm), which represents the allocation of computing resources vm for computing task t; the gene vm in chromosome 2 represents a computing resource, and the subsequent gene set { t } represents a computing task allocated to the computing resource vm.
Optionally, according to any multiple chromosome pair constructed by the information coding structure, a single multiple chromosome pair construction process is circulated according to a construction method to form a balanced mixed initialization population with the scale of M, and the specific process is as follows:
according to the chromosome pair coding structure obtained in step S1, assuming that the initialization population is constructed using k methods, x is constructed according to method 11Chromosome pairs, construct x according to method iiA chromosome pair, construct x according to method kkObtaining a balanced mixed initial population with the scale of M by a chromosome pair; wherein k is more than or equal to 2,
Figure GDA0002433046180000061
optionally, the fitness is improved according to the user input parameter and the original fitness modified mean structure, and the adaptive cross probability Pc and the adaptive variation probability Pm of each chromosome of the population in the evolution process are calculated according to the fitness, specifically, the process is as follows:
for the balanced hybrid initialization population, calculating an original fitness vector F of the chromosome according to a deadline constraintiniCorrecting the mean value according to the original fitness to construct an improved fitness vector Fimp
Subtracting the current improved adaptability value from the maximum improved adaptability value, and dividing by the difference between the maximum improved adaptability value and the improved adaptability correction mean value to obtain a probability intermediate variable Vmi
When the improved fitness value is smaller than the corrected mean value, the probability corrected variable takes the value of 1;
multiplying the relation between the improved fitness value and the modified mean value thereof by different parameters respectively, and marking as Pc;
taking M target chromosome samples, and repeating the processes to obtain M Pc values;
based on the same process, Pm can be obtained.
Optionally, the process of determining the preferred scheduling policy in step S5 is specifically as follows:
executing the steps S2, S3 and S4 on all chromosomes in the population to obtain a scheduling optimization strategy pool A and a scheduling optimization strategy pool B, and comparing the scheduling optimization strategy pool A and the scheduling optimization strategy pool B obtained in the steps S4 and S5 by taking the deadline constraint satisfaction rate as an evaluation standard;
determining a secondary constraint according to the user input information; the user input information further comprises secondary constraint information;
and if the fitness of a certain scheduling optimization strategy is optimal and does not violate the secondary deadline constraint or the violation deadline constraint degree is minimum relative to other scheduling optimization strategies, judging the scheduling optimization strategy as a target scheduling optimization strategy and giving a scheduling result.
In a third aspect of embodiments of the present invention, a computer-readable storage medium is provided, in which a computer program is stored, which, when executed by a processor, implements the steps of any of the methods according to the first aspect of embodiments of the present invention.
The embodiment of the invention provides a Re-Evolution (Re-Evolution) strategy based on a genetic algorithm to solve the problems of local optimization and low convergence speed aiming at the characteristics of a workflow task set, provides a coding structure of multiple chromosome pairs, can fully describe a workflow scheduling strategy according to workflow task node information, further ensures the survival rate of effective genes by adaptively calculating relevant variables of a corrected mean value under the constraint of a deadline, and preferably selects a final scheduling strategy from two scheduling optimization resource pools according to a preset rule. Compared with the existing scheduling method based on the evolutionary algorithm, the method reduces the calculated amount, can ensure the satisfying rate of the constraint requirement of the specific application scene, ensures the controllable execution efficiency of the algorithm, and can avoid the problems of local optimization, low convergence speed and the like.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
FIG. 1 is a block diagram of a workflow scheduling evolutionary optimization method provided by an embodiment of the present invention;
FIG. 2 is a flowchart of a workflow scheduling evolutionary optimization method provided by an embodiment of the present invention;
FIG. 3 is a schematic diagram of a scientific workflow structure provided by an embodiment of the present invention;
FIG. 4 is a schematic diagram of an operating environment of a workflow scheduling evolutionary optimization program provided by an embodiment of the present invention;
fig. 5 is a program module diagram of a workflow scheduling evolutionary optimization program according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention aims at a workflow task set, constructs a workflow scheduling evolution optimizing method based on Genetic Algorithm (GA), designs and describes a coding structure of multiple chromosome pairs, establishes efficient chromosome pairs, constructs a balanced mixed initialization population, adaptively calculates related variables based on the current population fitness, designs re-evolution operation, and provides reference realization for workflow scheduling strategy optimizing and convergence accelerating.
The invention is a calculation method for self-adaptively calculating relevant variables according to the deadline constraint provided by a user, constructing an evolutionary process and a re-evolutionary process, comprehensively evaluating the advantages and disadvantages of a scheduling strategy and optimizing a final result. Aiming at the information characteristics of task nodes in a workflow task set, the concepts of a multi-chromosome pair coding structure, balanced mixed initialization population, calculation of relevant variables of self-adaptive mean correction under the constraint of deadline, a re-evolution strategy, a scheduling optimization strategy resource pool, an optimization scheduling strategy and the like are provided, and a novel workflow scheduling evolution optimization method under the constraint of deadline is designed.
In order to explain the technical means of the present invention, the following description will be given by way of specific examples.
To accurately describe the embodiments of the present invention, the following terms and meanings are first explained.
Task: refers to the basic unit scheduled by the scheduling evolution optimizing method. In the present invention, a gene in a chromosome is used to represent a task. The task has information such as a task number, a size, a received data size, a transmitted data size, and a dependency relationship.
Resource: resources are used for computing tasks, and in the present invention refer specifically to virtual machines. Generally, a virtual machine has information such as virtual machine number, performance, status, and price.
Workflow: a form of task collection. Generally, a workflow is a set containing a plurality of tasks and their dependencies, wherein a scientific workflow is a more important and complex one of workflows.
Chromosome pair: chromosome pairs are specifically designed as multiple chromosome pairs in the present invention to describe the main features of the work, and different chromosomes in a chromosome pair play different roles in different gene operation stages, also called individuals.
Adaptive calculation of the relevant variables: adaptive variables in the scheduling evolution optimizing method, such as improved fitness, cross probability and mutation probability, selection probability, penalty function and the like. The defects of early maturity and local convergence caused by the characteristics of computing resource heterogeneity, dynamics and the like can be avoided by adaptively computing the relevant variables.
Gene operation: gene manipulation mainly refers to operations such as crossover, mutation, selection and the like in the evolution process of the invention.
Scheduling the optimizing strategy resource pool: and storing the scheduling strategy and providing support for re-evolution and optimal scheduling strategy.
And (3) constraint: refers to the requirements set forth by the user, with this as the primary constraint. The invention takes the cut-off time as a main constraint condition and takes the execution cost as a secondary constraint condition.
Constraint satisfaction rate: and comparing the constraint terms with the constraint conditions, repeatedly executing for a plurality of times, and counting the ratio of the satisfied constraints, wherein the ratio is called constraint satisfaction rate, and the higher the constraint satisfaction rate is, the more excellent the corresponding scheduling strategy is.
Fitness is as follows: the decision of the quality of the scheduling policy is the key to determine the direction of evolution.
And (4) re-evolution: on the basis of the result obtained by the current evolution, the re-evolved population is reconstructed according to a set rule, re-evolution is carried out, and the re-evolution result is stored into a corresponding scheduling optimization strategy resource pool, so that the problems of partial optimization and prematurity in the common evolution result can be avoided.
Example one
Fig. 1 and fig. 2 respectively show a basic configuration and an implementation flow of a workflow scheduling evolution optimizing method according to an embodiment of the present invention, which are detailed as follows:
step S1, selecting chromosomes in a genetic algorithm population as scheduling strategy information carriers according to user input parameters and workflow data, and designing an information coding structure of a multiple chromosome pair W by combining the population scale M, the calculation resource scale N and the workflow data; the user input parameters include an expiration constraint parameter.
In this step, the coding structure of the multiple chromosome pairs comprises a plurality of chromosome pairs, and different chromosomes contain different information. In the scheduling evolution optimizing method disclosed by the invention, the workflow data is not relied on any more, and the tasks and related information in the workflow are represented by using multiple chromosome pair descriptions. The method disclosed by the invention selects a task number (0- (L-1)) and a task number (L) extracted from a workflow; the number (0- (N-1)) and the number (N) of the virtual machines in the resource pool; and designing a W coding structure of the multiple chromosome pairs according to information such as cross probability, mutation probability and the like.
Wherein the information-encoding structure of the multiple chromosome pair W in this step comprises 2 chromosomes in total, i.e.
Multiple chromosome pair W ═ chromesome1, chromesome2}
chromesome1=sequence of{Pc,Pm,gen0,gen1,…,genk,…,genL-1}
chromesome2={tof0,tof1,…,tofi,…,tofN-1}
Let the size of the execution sequence be g on the ith virtual machine, then tofiCan be expressed as:
Figure GDA0002433046180000101
wherein Pc is the adaptive crossover probability of the chromosome; pm is the self-adaptive mutation probability of the chromosome; genkIs a gene at the k position of the chromosome, k is more than or equal to 0<L;vmiFor the ith virtual machine in the computing resources, i is more than or equal to 0<N;tofiFor allocation to computing resources vmiThe sequence of computing task execution of (1); the code of the gene gen in the chromosome of chromesome1 is t (vm), which represents the allocation of computing resources vm for computing task t; the gene vm in chromosome 2 represents a computing resource, and the subsequent gene set { t } represents a computing task allocated to the computing resource vm.
And step S2, according to any multiple chromosome pair constructed by the information coding structure, circulating the construction process of a single multiple chromosome pair according to a construction method to form a balanced mixed initialization population with the scale of M.
As an implementation mode, the specific process of the step is as follows:
according to the chromosome pair coding structure obtained in step S1, assuming that the initialization population is constructed using k methods, x is constructed according to method 11Chromosome pairs, construct x according to method iiA chromosome pair, construct x according to method kkObtaining a balanced mixed initial population with the scale of M by a chromosome pair; wherein k is more than or equal to 2,
Figure GDA0002433046180000102
constructing any multiple chromosome pair a according to the coding structure proposed by the step (1); and circulating the chromosome pair construction process according to a plurality of construction methods, and balancing the mixed initialization population as B. If the population B has M chromosome pairs, setting a total of k methods; the chromosome pair set constructed in method 1 is B1; the chromosome pair set constructed by the method 2 is B2; …, respectively; the chromosome pair set constructed by the method k is Bk; the initialization population B consists of k sub-populations. Construction of x according to method 11Chromosome Pair, method 2 construct x2Chromosome pair, …, method i construct xiA pair of chromosome strips, method k constructs xkAnd (4) carrying out chromosome pair to obtain a balanced mixed initial population with the scale of M.
Let us say the chromosome pair set constructed by method 1
Figure GDA0002433046180000111
Chromosome pair set formed by method 2
Figure GDA0002433046180000112
By analogy, the chromosome pair set formed by the method k is
Figure GDA0002433046180000113
Therefore, the balanced hybrid initialization population B is constituted by: b ═ B1, B2.
And step S3, initializing the population according to the balanced mixture, constructing an evolution process, adjusting the evolution direction according to the user input parameters, modifying the mean value according to the user input parameters and the original fitness to construct and improve the fitness, calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, performing gene operation on each chromosome, and storing the obtained scheduling strategy into a scheduling optimization strategy pool A.
Optionally, the improved fitness is constructed according to the user input parameters and the corrected mean value of the original fitness, and the adaptive cross probability Pc and the adaptive variation probability Pm of each chromosome of the population in the evolution process are calculated according to the fitness, specifically, the process is as follows:
for the balanced hybrid initialization population, calculating an original fitness vector F of the chromosome according to a deadline constraintiniCorrecting the mean value according to the original fitness to construct an improved fitness vector Fimp
Subtracting the current improved adaptability value from the maximum improved adaptability value, and dividing by the difference between the maximum improved adaptability value and the improved adaptability correction mean value to obtain a probability intermediate variable Vmi
When the improved fitness value is smaller than the corrected mean value, the probability corrected variable takes the value of 1;
multiplying the relation between the improved fitness value and the modified mean value thereof by different parameters respectively, and marking as Pc;
taking M target chromosome samples, and repeating the processes to obtain M Pc values;
based on the same process, Pm can be obtained.
In particular, the method comprises the following steps of,
Figure GDA0002433046180000114
Figure GDA0002433046180000115
wherein, Pc(i) Represents the crossover probability, P, of the ith chromosome pair in the contemporary populationm(i) The mutation probability of the ith chromosome pair in the contemporary population is shown. In the formulas (1) and (2), when the fitness f (i) of the ith chromosome is less than or equal to the modified mean value f of the current population fitnesscavgThen, the chromosome pair is considered to be in the Maturing and Maturizing stages in the evolution process, and the cross parameter k is used3And a variation parameter k4(ii) a When the fitness f (i) of the ith chromosome pair is more than or equal to the modified mean value f of the current population fitnesscavgWhen the chromosome pair is considered to be in the Initial and undernormalized stages of the evolution process, the crossover parameter k is used1And a variation parameter k2. In order to avoid the influence of the extremely poor chromosome pair generated by mutation on the overall population fitness mean value, the embodiment adopts the lambda modified mean value fcavgIt is calculated as shown in equation (3), where λ represents the percentage of the population that needs to be corrected, and is used only to correct the extremely bad chromosome pairs.
Figure GDA0002433046180000121
In the formula (3), SpRepresenting the size of the current population, fc(i) Indicating the fitness of the modified population chromosome pair.
And step S4, taking omega chromosomes in the optimization strategy pool A as the input of the re-evolution operation under the constraint of deadline, adding M-omega chromosomes which are randomly generated, obtaining a re-evolution population as the input of the step S3, and iteratively performing re-evolution according to a set rule, wherein the obtained scheduling strategies are stored in a scheduling optimization strategy pool B.
In this step, according to a predetermined rule, ω chromosomes in the scheduling and optimizing strategy resource pool a are used as input of the re-evolution operation, M- ω chromosomes are added, randomly generated chromosomes are added, a re-evolved population is obtained as input of step S3, an iterative re-evolution algebra is iterated according to the predetermined rule, and the obtained chromosomes are stored in the scheduling and optimizing strategy resource pool B, so as to provide scheduling strategy standby resources for step S5.
Setting the storage population in the resource pool A of the scheduling optimization strategy as SA:SA={a0,a1,...,aM-1};
Part of the population selected according to a given rule is S1:S1={ai,ai+1,...ai+ω};
The newly generated partial population is S2:S2={a0,a1,...,aM-1-ω};
Thus, the resulting evolved population is Snew
Snew={S1,S2}
And step S5, comprehensively evaluating each scheduling strategy of the scheduling optimizing strategy pool A and the scheduling optimizing strategy pool B, matching the deadline constraint condition, comparing the deadline constraint satisfaction rate and the execution cost, evaluating the algorithm execution efficiency, and finally judging the optimal scheduling strategy.
Optionally, the process of determining the preferred scheduling policy in this step is specifically as follows:
executing the steps S2, S3 and S4 on all chromosomes in the population to obtain a scheduling optimization strategy pool A and a scheduling optimization strategy pool B, and comparing the scheduling optimization strategy pool A and the scheduling optimization strategy pool B obtained in the steps S4 and S5 by taking the deadline constraint satisfaction rate as an evaluation standard;
determining a secondary constraint according to the user input information; the user input information further comprises secondary constraint information;
and if the fitness of a certain scheduling optimization strategy is optimal and does not violate the secondary deadline constraint or the violation deadline constraint degree is minimum relative to other scheduling optimization strategies, judging the scheduling optimization strategy as a target scheduling optimization strategy and giving a scheduling result.
Specifically, let z be the number of re-evolutions; the population formed by re-evolution is Sr; the storage population set in the scheduling optimization strategy pool B is SB:SB={Sr1,Sr2,...,Srz}; the number of chromosomes with the highest constraint satisfaction rate is set to be h, and the set is expressed as MB:MB={m0,m1,...,mh-1}; assuming the lowest cost chromosome number is e, the set is denoted as CB:CB={c0,c1,...,ce-1}。
Comparative population set SBAnd population SAEach chromosome in the set M is firstly compared with the constraint satisfaction rates to find all chromosomes with the highest constraint satisfaction rates, and the chromosomes are stored into a constraint satisfaction rate chromosome set MB(ii) a If M isBIs greater than 1, then set M is traversedBAll chromosomes in the database are compared with the execution cost, all chromosomes with the lowest execution cost are found and stored into an execution cost chromosome set CB(ii) a If C is presentBIs greater than 1, set C is traversedBComparing the efficiency of the method to find out all chromosomes with the highest efficiency, and if the number of chromosomes is more than 1, randomly selecting one chromosome as a result to be output.
The procedure of this example is described below by way of specific examples.
The experiment adopts a scientific workflow montage-25, wherein 25 task nodes have a structural schematic diagram shown in FIG. 3; and simulated using 5 different types of virtual machines, the virtual machine parameter settings configured with reference to Amazon EC 2.
(1) Designing multiple chromosome pair coding structures
Let the multiple chromosome pair describe the workflow task as set W. To be limited by space, only the data of the 0 th chromosome pair therein are listed,
W0={chromesome1,chromesome2}
chromesome1=sequence of{0.45,0.011,T4(0),...T24(4)}
chromesome2=sequence of{vm0,T4,T1,T12,T16,T20,T21,T23}
...
sequence of{vm4,T7,T10,T11,T17,T24}
wherein, the first 2 genes of chromesome1 are 0.45, and 0.011 is cross probability and mutation probability respectively; the last 25 genes are mapping pairs of computational tasks and computational resources, for a total of 27 genes.
Similarly, chromesome2 has a total of 5 daughter chromosomes, where the 1 st gene in the daughter chromosome represents the allocated computational resource and subsequent genes represent the computational tasks performed on gene No. 1.
(2) Constructing balanced hybrid initialization population
And (2) obtaining a workflow task feature set W of the multiple chromosome pairs according to the step (1), wherein the number of the chromosome pairs is 50. For example, 2 scheduling algorithms and a random algorithm are selected, each scheduling generates 15 chromosome pairs, and the remaining 20 chromosome pairs are generated by the random algorithm.
(3) Adaptive calculation of dependent variables
Self-adaptively calculating the cross probability and the mutation probability of all chromosome pairs in W according to the formulas (1) and (2) to obtain a probability matrix P,
Figure GDA0002433046180000141
and writing the corresponding crossover probabilities and mutation probabilities to the corresponding loci of the corresponding chromosome pairs.
(4) Performing re-evolution
And (3) taking 25 chromosome pairs in the scheduling optimization strategy resource pool A as the input of re-evolution operation according to a set rule, adding 25 randomly generated chromosome pairs to obtain a re-evolution population as the input of the step (3), iterating and re-evolving algebra according to the set rule, and storing the obtained chromosome pairs in the scheduling optimization strategy resource pool B to provide scheduling strategy standby resources for the step (5).
Setting the storage population in the resource pool A of the scheduling optimization strategy as SA
SA={a0,a1,...,a49};
Part of the population selected according to a given rule is S1
S1={ai,ai+1,...,ai+24};
The newly generated partial population is S2:S2={a0,a1,...,a24};
Thus, the resulting evolved population is Snew
Snew={S1,S2}
To be limited by space, only the data of the 0 th chromosome pair therein are listed,
W0={chromesome1,chromesome2}
chromesome1=sequence of{0.25,0.002,T0(2),...,T24(3)}
chromesome2=sequence of{vm0,T4,T1,T3,...,T14,T16,T22}
...
sequence of{vm4,T10,T20,T17,T19,T21,T23}
(5) optimizing scheduling policies
And comprehensively evaluating each chromosome in the scheduling optimizing strategy pool A and the scheduling optimizing strategy pool B, comparing the fitness value with the execution cost, matching constraint conditions, and finally judging the Final of the optimal scheduling strategy.
Final={chromesome1,chromesome2}
chromesome1=sequence of{0.07,0.001,T0(2),...,T24(2)}
chromesome2=sequence of{vm0,T4,T1,T3,...,T14,T17,T21}
...
sequence of{vm4,T10,T20,T16,T19,T22}
The results of this embodiment and the other two methods are shown in table 1, where the satisfaction rate of the constraint proposed by the present invention is 100% and the execution cost is 13.2 unit cost when the application requires that the deadline constraint is 328.7 unit time; the constraint satisfaction rate of the PSO method is 10%, and the execution cost is 41.6 unit cost; CGA2The constraint satisfaction rate of the method is 60%, and the execution cost is 18.9 unit cost. As can be seen from the table, under the given deadline constraints, the methodPSO (pseudo-random-order) and CGA (carrier-grade algorithm) are compared in clear scheduling evolution optimizing method2The constraint satisfaction rate of the scheduling method is higher, and the execution cost is lower.
TABLE 1 comparison of the results of the method of this example with those of other methods
Figure GDA0002433046180000161
The workflow scheduling Evolution optimizing method aims at the characteristics of a workflow task set, and provides a Re-Evolution (Re-Evolution) strategy based on a genetic algorithm to solve the problems of local optimization and low convergence speed, provides a coding structure of multiple chromosome pairs, can fully describe the workflow scheduling strategy according to workflow task node information, further ensures the survival rate of effective genes by adaptively calculating relevant variables of a corrected mean value under the constraint of a cut-off time, and preferably selects a final scheduling strategy from two scheduling optimizing resource pools according to a preset rule. Compared with the existing scheduling method based on the evolutionary algorithm, the method reduces the calculated amount, can ensure the satisfying rate of the constraint requirement of the specific application scene, ensures the controllable execution efficiency of the algorithm, and can avoid the problems of local optimization, low convergence speed and the like. The workflow scheduling evolution optimizing method under the deadline constraint can meet the actual requirement of specified application and has wide reference value in the field of workflow scheduling optimizing based on the deadline constraint.
Corresponding to the workflow scheduling evolution optimization method described in the above embodiment, fig. 4 shows a schematic operating environment diagram of the workflow scheduling evolution optimization program provided in the embodiment of the present invention. For convenience of explanation, only the portions related to the present embodiment are shown.
In the present embodiment, the workflow scheduling evolution optimization program 400 is installed and executed in the terminal device 40. The terminal device 40 may include, but is not limited to, a memory 401 and a processor 402. Fig. 4 only shows terminal device 40 having components 401 and 402, but it is to be understood that not all of the shown components are required and that more or fewer components may alternatively be implemented.
The storage 401 may be an internal storage unit of the terminal device 40 in some embodiments, for example, a hard disk or a memory of the terminal device 40. In other embodiments, the memory 401 may also be an external storage device of the terminal device 40, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the terminal device 40. Further, the memory 401 may also include both an internal storage unit and an external storage device of the terminal device 40. The memory 401 is used for storing application software installed in the terminal device 40 and various types of data, such as program codes of the workflow scheduling evolution optimizing program 400. The memory 401 may also be used to temporarily store data that has been output or is to be output.
The processor 402 may be, in some embodiments, a Central Processing Unit (CPU), a microprocessor or other data processing chip, and is configured to run program codes stored in the memory 401 or process data, such as executing the workflow scheduling evolutionary optimization program 400.
The terminal device 40 may further include a display, which may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an Organic Light-Emitting Diode (OLED) touch panel, and the like in some embodiments.
Fig. 5 is a block diagram of a workflow scheduling evolutionary optimization procedure 400 according to an embodiment of the present invention. In this embodiment, the workflow scheduling evolution optimization program 400 can be divided into one or more modules, and the one or more modules are stored in the memory 401 and executed by one or more processors (in this embodiment, the processor 402) to complete the present invention. For example, in fig. 5, the workflow scheduling evolution optimizing program 400 can be divided into an information coding structure design module 501, a balanced hybrid initialization population forming module 502, a scheduling optimizing strategy module 503 and a decision module 504. The module referred to in the present invention refers to a series of computer program instruction segments capable of performing specific functions, and is more suitable than a program for describing the execution process of the workflow scheduling evolution optimizing program 400 in the server 40. The following description will specifically describe the functions of the modules 501 and 504.
The information coding structure design module 501 is used for selecting chromosomes in a genetic algorithm population as scheduling strategy information carriers according to user input parameters and workflow data, and designing the information coding structure of a multiple chromosome pair W by combining the population scale M, the calculation resource scale N and the workflow data; the user input parameters include an expiration constraint parameter.
And a balanced hybrid initialization population forming module 502, configured to cycle a single multiple chromosome pair construction process according to a construction method according to any multiple chromosome pair constructed by the information coding structure, so as to form a balanced hybrid initialization population with a size of M.
The scheduling and optimizing strategy module 503 is configured to initialize a population according to the balanced mixture, construct an evolution process, adjust an evolution direction according to the user input parameter, modify a mean value structure according to the user input parameter and an original fitness, calculate an adaptive cross probability Pc and an adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, perform gene operation on each chromosome, and store an obtained scheduling strategy in the scheduling and optimizing strategy pool a; and
omega chromosomes in the optimization strategy pool A are used as input of re-evolution operation under the constraint of deadline, M-omega chromosomes which are randomly generated are added, re-evolution populations are obtained and used as input of the step S3, re-evolution is executed in an iterative mode according to a set rule, and obtained scheduling strategies are stored in a scheduling optimization strategy pool B;
the decision module 504 is configured to comprehensively evaluate each scheduling policy of the scheduling optimization strategy pool a and the scheduling optimization strategy pool B, match the deadline constraint condition, compare the deadline constraint satisfaction rate and the execution cost, evaluate the algorithm execution efficiency, and finally decide the optimal scheduling strategy.
As an embodiment, the information-encoding structure of the multiple chromosome pair W comprises a total of 2 chromosomes, i.e.
Multiple chromosome pair W ═ chromesome1, chromesome2}
chromesome1=sequence of{Pc,Pm,gen0,gen1,…,genk,…,genL-1}
chromesome2={tof0,tof1,…,tofi,…,tofN-1}
Let the size of the execution sequence be g on the ith virtual machine, then tofiCan be expressed as:
Figure GDA0002433046180000181
wherein Pc is the adaptive crossover probability of the chromosome; pm is the self-adaptive mutation probability of the chromosome; genkIs a gene at the k position of the chromosome, k is more than or equal to 0<L;vmiFor the ith virtual machine in the computing resources, i is more than or equal to 0<N;tofiFor allocation to computing resources vmiThe sequence of computing task execution of (1); the code of the gene gen in the chromosome of chromesome1 is t (vm), which represents the allocation of computing resources vm for computing task t; the gene vm in chromosome 2 represents a computing resource, and the subsequent gene set { t } represents a computing task allocated to the computing resource vm.
As another possible implementation manner, the balanced hybrid initialization population forming module 502 is specifically configured to:
according to the chromosome pair coding structure obtained in step S1, assuming that the initialization population is constructed using k methods, x is constructed according to method 11Chromosome pairs, construct x according to method iiA chromosome pair, construct x according to method kkObtaining a balanced mixed initial population with the scale of M by a chromosome pair; wherein k is more than or equal to 2,
Figure GDA0002433046180000191
optionally, the scheduling optimization strategy module 503 constructs an improved fitness according to the user input parameter and the original fitness modified mean, and calculates an adaptive cross probability Pc and an adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, specifically including the following steps:
for the balanced hybrid initialization population, calculating an original fitness vector F of the chromosome according to a deadline constraintiniCorrecting the mean value according to the original fitness to construct an improved fitness vector Fimp
Subtracting the current improved adaptability value from the maximum improved adaptability value, and dividing by the difference between the maximum improved adaptability value and the improved adaptability correction mean value to obtain a probability intermediate variable Vmi
When the improved fitness value is smaller than the corrected mean value, the probability corrected variable takes the value of 1;
multiplying the relation between the improved fitness value and the modified mean value thereof by different parameters respectively, and marking as Pc;
taking M target chromosome samples, and repeating the processes to obtain M Pc values;
based on the same process, Pm can be obtained.
Further, the determining module 504 is specifically configured to:
executing the steps S2, S3 and S4 on all chromosomes in the population to obtain a scheduling optimization strategy pool A and a scheduling optimization strategy pool B, and comparing the scheduling optimization strategy pool A and the scheduling optimization strategy pool B obtained in the steps S4 and S5 by taking the deadline constraint satisfaction rate as an evaluation standard;
determining a secondary constraint according to the user input information; the user input information further comprises secondary constraint information;
and if the fitness of a certain scheduling optimization strategy is optimal and does not violate the secondary deadline constraint or the violation deadline constraint degree is minimum relative to other scheduling optimization strategies, judging the scheduling optimization strategy as a target scheduling optimization strategy and giving a scheduling result.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described system embodiments are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the embodiments of the present invention may be implemented in the form of a software product, which is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, a network device, or the like) or a processor (processor) to execute all or part of the steps of the methods according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present invention, and not for limiting the same; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present invention, and are intended to be included within the scope of the present invention.

Claims (3)

1. A workflow scheduling evolution optimizing method is characterized by comprising the following steps:
step S1, selecting chromosomes in a genetic algorithm population as scheduling strategy information carriers according to user input parameters and workflow data, and designing an information coding structure of a multiple chromosome pair W by combining the population scale M, the calculation resource scale N and the workflow data; the user input parameters include an expiration constraint parameter;
step S2, according to any multiple chromosome pair of the information coding structure, circulating the single multiple chromosome pair construction process according to the construction method to form a balanced mixed initialization population with the scale of M;
step S3, initializing the population according to the balanced mixing, constructing an evolution process, adjusting the evolution direction according to the user input parameters, modifying the mean value according to the user input parameters and the original fitness to construct and improve the fitness, calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, performing gene operation on each chromosome, and storing the obtained scheduling strategy into a scheduling optimization strategy pool A;
wherein the genetic manipulation refers to the operations of crossing, mutation and selection in the evolution process;
step S4, using omega chromosomes in the optimization strategy pool A as input of re-evolution operation under the constraint of deadline, adding M-omega chromosomes generated randomly, obtaining a re-evolved population as an input population of the step S3, and performing re-evolution iteratively according to the step S3, wherein the obtained scheduling strategies are stored in a scheduling optimization strategy pool B;
wherein, the condition for stopping iteration is as follows: the iteration times reach the preset times;
step S5, matching the deadline constraint condition, comparing the deadline constraint satisfaction rate and the execution cost, evaluating the algorithm execution efficiency, and judging each scheduling strategy of the scheduling optimizing strategy pool A and the scheduling optimizing strategy pool B to determine the optimal scheduling strategy;
wherein the information-encoding structure of the multiple chromosome pair W in step S1 comprises 2 chromosomes in total, i.e.
Multiple chromosome pair W ═ chromesome1, chromesome2}
chromesome1=sequence of{Pc,Pm,gen0,gen1,…,genk,…,genL-1}
chromesome2={tof0,tof1,…,tofi,…,tofN-1}
Let the size of the execution sequence be g on the ith virtual machine, then tofiCan be expressed as:
Figure FDA0002433046170000021
wherein Pc is the adaptive crossover probability of the chromosome; pm is the self-adaptive mutation probability of the chromosome; genkIs a gene at the k position of the chromosome, k is more than or equal to 0<L;vmiFor the ith virtual machine in the computing resources, i is more than or equal to 0<N;tofiFor allocation to computing resources vmiThe sequence of computing task execution of (1);
wherein L is an integer greater than 0, N is the number of virtual machines,
Figure FDA0002433046170000022
for computing resources vmiThe g-1 st computing task of (1);
according to any multiple chromosome pair constructed by the information coding structure, circulating the construction process of a single multiple chromosome pair according to a construction method to form a balanced mixed initialization population with the scale of M, wherein the specific process is as follows:
according to the chromosome pair coding structure obtained in step S1, assuming that the initialization population is constructed using k methods, x is constructed according to method 11Chromosome pairs, construct x according to method iiA chromosome pair, construct x according to method kkObtaining a balanced mixed initial population with the scale of M by a chromosome pair; wherein k is more than or equal to 2,
Figure FDA0002433046170000023
the method comprises the following steps of constructing improved fitness according to user input parameters and an original fitness correction mean value, and calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of a population in the evolution process according to the fitness, wherein the specific process is as follows:
for the balanced hybrid initialization population, calculating an original fitness vector F of the chromosome according to a deadline constraintiniCorrecting the mean value according to the original fitness to construct an improved fitness vector Fimp
Subtracting the current improved adaptability value from the maximum improved adaptability value, and dividing by the difference between the maximum improved adaptability value and the improved adaptability correction mean value to obtain a probability intermediate variable Vmi
When the improved fitness value is smaller than the corrected mean value, the probability corrected variable takes the value of 1;
multiplying the relation between the improved fitness value and the modified mean value thereof by different parameters respectively, and marking as Pc;
taking M target chromosome samples, and repeating the processes to obtain M Pc values;
based on the same process, Pm can be obtained;
the calculation formula for calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome in the population in the evolution process according to the fitness comprises the following steps:
Figure FDA0002433046170000031
Figure FDA0002433046170000032
wherein, Pc(i) Represents the crossover probability, P, of the ith chromosome pair in the contemporary populationm(i) Representing the mutation probability of the i-th chromosome pair in the contemporary population, fmaxRepresents the maximum improved fitness value, f (i) represents the improved fitness of the ith chromosome to the currentcavgModified mean, k, representing current population fitness1And k3Denotes the cross parameter, k2And k4Representing a variation parameter;
in step S5, each scheduling policy of the scheduling optimization policy pool a and the scheduling optimization policy pool B is determined, so as to determine the preferred scheduling policy, specifically, the process is as follows:
executing the steps S2, S3 and S4 on all chromosomes in the population to obtain a scheduling optimization strategy pool A and a scheduling optimization strategy pool B, and comparing the scheduling optimization strategy pool A and the scheduling optimization strategy pool B obtained in the steps S4 and S5 by taking the deadline constraint satisfaction rate as an evaluation standard;
determining a secondary constraint according to the user input information; the user input information further comprises secondary constraint information;
and if the fitness of a certain scheduling optimization strategy is optimal and does not violate the secondary deadline constraint or the violation deadline constraint degree is minimum relative to other scheduling optimization strategies, judging the scheduling optimization strategy as a target scheduling optimization strategy and giving a scheduling result.
2. A terminal device, comprising a memory and a processor, wherein the memory stores a computer program operable on the processor, and the processor executes the computer program to implement the following steps:
step S1, selecting chromosomes in a genetic algorithm population as scheduling strategy information carriers according to user input parameters and workflow data, and designing an information coding structure of a multiple chromosome pair W by combining the population scale M, the calculation resource scale N and the workflow data; the user input parameters include an expiration constraint parameter;
step S2, according to any multiple chromosome pair of the information coding structure, circulating the single multiple chromosome pair construction process according to the construction method to form a balanced mixed initialization population with the scale of M;
step S3, initializing the population according to the balanced mixing, constructing an evolution process, adjusting the evolution direction according to the user input parameters, modifying the mean value according to the user input parameters and the original fitness to construct and improve the fitness, calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of the population in the evolution process according to the fitness, performing gene operation on each chromosome, and storing the obtained scheduling strategy into a scheduling optimization strategy pool A;
wherein the genetic manipulation refers to the operations of crossing, mutation and selection in the evolution process;
step S4, using omega chromosomes in the optimization strategy pool A as input of re-evolution operation under the constraint of deadline, adding M-omega chromosomes generated randomly, obtaining a re-evolved population as an input population of the step S3, and performing re-evolution iteratively according to the step S3, wherein the obtained scheduling strategies are stored in a scheduling optimization strategy pool B;
wherein, the condition for stopping iteration is as follows: the iteration times reach the preset times;
step S5, matching the deadline constraint condition, comparing the deadline constraint satisfaction rate and the execution cost, evaluating the algorithm execution efficiency, and judging each scheduling strategy of the scheduling optimizing strategy pool A and the scheduling optimizing strategy pool B to determine the optimal scheduling strategy;
wherein the information-encoding structure of the multiple chromosome pair W in step S1 comprises 2 chromosomes in total, i.e.
Multiple chromosome pair W ═ chromesome1, chromesome2}
chromesome1=sequence of{Pc,Pm,gen0,gen1,…,genk,…,genL-1}
chromesome2={tof0,tof1,…,tofi,…,tofN-1}
Let the size of the execution sequence be g on the ith virtual machine, then tofiCan be expressed as:
Figure FDA0002433046170000041
wherein Pc is the adaptive crossover probability of the chromosome; pm is the self-adaptive mutation probability of the chromosome; genkIs a gene at the k position of the chromosome, k is more than or equal to 0<L;vmiFor the ith virtual machine in the computing resources, i is more than or equal to 0<N; tofi is a calculation task execution sequence allocated to a calculation resource vmi;
wherein L is largeAn integer of 0, N is the number of virtual machines,
Figure FDA0002433046170000051
for computing resources vmiThe g-1 st computing task of (1);
according to any multiple chromosome pair constructed by the information coding structure, circulating the construction process of a single multiple chromosome pair according to a construction method to form a balanced mixed initialization population with the scale of M, wherein the specific process is as follows:
according to the chromosome pair coding structure obtained in step S1, assuming that the initialization population is constructed using k methods, x is constructed according to method 11Chromosome pairs, construct x according to method iiA chromosome pair, construct x according to method kkObtaining a balanced mixed initial population with the scale of M by a chromosome pair; wherein k is more than or equal to 2,
Figure FDA0002433046170000052
the method comprises the following steps of constructing improved fitness according to user input parameters and an original fitness correction mean value, and calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome of a population in the evolution process according to the fitness, wherein the specific process is as follows:
for the balanced hybrid initialization population, calculating an original fitness vector F of the chromosome according to a deadline constraintiniCorrecting the mean value according to the original fitness to construct an improved fitness vector Fimp
Subtracting the current improved adaptability value from the maximum improved adaptability value, and dividing by the difference between the maximum improved adaptability value and the improved adaptability correction mean value to obtain a probability intermediate variable Vmi
When the improved fitness value is smaller than the corrected mean value, the probability corrected variable takes the value of 1;
multiplying the relation between the improved fitness value and the modified mean value thereof by different parameters respectively, and marking as Pc;
taking M target chromosome samples, and repeating the processes to obtain M Pc values;
based on the same process, Pm can be obtained;
the calculation formula for calculating the self-adaptive cross probability Pc and the self-adaptive variation probability Pm of each chromosome in the population in the evolution process according to the fitness comprises the following steps:
Figure FDA0002433046170000053
Figure FDA0002433046170000054
wherein, Pc(i) Represents the crossover probability, P, of the ith chromosome pair in the contemporary populationm(i) Representing the mutation probability of the i-th chromosome pair in the contemporary population, fmaxRepresents the maximum improved fitness value, f (i) represents the improved fitness of the ith chromosome to the currentcavgModified mean, k, representing current population fitness1And k3Denotes the cross parameter, k2And k4Representing a variation parameter;
in step S5, each scheduling policy of the scheduling optimization policy pool a and the scheduling optimization policy pool B is determined, so as to determine the preferred scheduling policy, specifically, the process is as follows:
executing the steps S2, S3 and S4 on all chromosomes in the population to obtain a scheduling optimization strategy pool A and a scheduling optimization strategy pool B, and comparing the scheduling optimization strategy pool A and the scheduling optimization strategy pool B obtained in the steps S4 and S5 by taking the deadline constraint satisfaction rate as an evaluation standard;
determining a secondary constraint according to the user input information; the user input information further comprises secondary constraint information;
and if the fitness of a certain scheduling optimization strategy is optimal and does not violate the secondary deadline constraint or the violation deadline constraint degree is minimum relative to other scheduling optimization strategies, judging the scheduling optimization strategy as a target scheduling optimization strategy and giving a scheduling result.
3. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method as set forth in claim 1.
CN201810154127.7A 2018-02-22 2018-02-22 Workflow scheduling evolution optimization method and terminal equipment Active CN108320059B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810154127.7A CN108320059B (en) 2018-02-22 2018-02-22 Workflow scheduling evolution optimization method and terminal equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810154127.7A CN108320059B (en) 2018-02-22 2018-02-22 Workflow scheduling evolution optimization method and terminal equipment

Publications (2)

Publication Number Publication Date
CN108320059A CN108320059A (en) 2018-07-24
CN108320059B true CN108320059B (en) 2020-06-09

Family

ID=62900738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810154127.7A Active CN108320059B (en) 2018-02-22 2018-02-22 Workflow scheduling evolution optimization method and terminal equipment

Country Status (1)

Country Link
CN (1) CN108320059B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110516795B (en) * 2019-08-28 2022-05-10 北京达佳互联信息技术有限公司 Method and device for allocating processors to model variables and electronic equipment
CN111382941B (en) * 2020-03-09 2022-08-02 河海大学常州校区 Parallel task scheduling method with multiple constraint conditions
CN111882234B (en) * 2020-08-03 2022-04-12 浪潮云信息技术股份公司 Scientific workflow task management method and device
CN112256925B (en) * 2020-10-21 2022-10-04 西安电子科技大学 Multi-request-oriented scientific workflow data set storage method
CN112884383B (en) * 2021-04-19 2024-04-05 上海海事大学 Container port emergency material optimizing and transferring method considering time window constraint
CN113434267B (en) * 2021-05-25 2022-12-02 深圳大学 Cloud computing workflow dynamic scheduling method, device, equipment and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133091A (en) * 2017-05-08 2017-09-05 武汉轻工大学 The cloud workflow task dispatching method being classified based on top-down task
CN107329831A (en) * 2017-06-29 2017-11-07 北京仿真中心 A kind of artificial resource dispatching method based on improved adaptive GA-IAGA

Also Published As

Publication number Publication date
CN108320059A (en) 2018-07-24

Similar Documents

Publication Publication Date Title
CN108320059B (en) Workflow scheduling evolution optimization method and terminal equipment
Liu et al. Deadline‐constrained coevolutionary genetic algorithm for scientific workflow scheduling in cloud computing
Alkayal et al. Efficient task scheduling multi-objective particle swarm optimization in cloud computing
CN110489229B (en) Multi-target task scheduling method and system
CN113411369B (en) Cloud service resource collaborative optimization scheduling method, system, medium and equipment
Zhou et al. A modified PSO algorithm for task scheduling optimization in cloud computing
Zade et al. SAEA: A security-aware and energy-aware task scheduling strategy by Parallel Squirrel Search Algorithm in cloud environment
CN107273209B (en) Hadoop task scheduling method based on minimum spanning tree clustering improved genetic algorithm
Rehman et al. Multi‐objective approach of energy efficient workflow scheduling in cloud environments
Jia et al. Multi-objective energy-aware batch scheduling using ant colony optimization algorithm
CN108182115A (en) A kind of virtual machine load-balancing method under cloud environment
Xu et al. A multiple priority queueing genetic algorithm for task scheduling on heterogeneous computing systems
CN107656799B (en) Workflow scheduling method considering communication and computing cost under multi-cloud environment
Kalra et al. Multi‐criteria workflow scheduling on clouds under deadline and budget constraints
CN110688224A (en) Hybrid cloud service flow scheduling method
Peng et al. Genetic algorithm‐based task scheduling in cloud computing using MapReduce framework
Yao et al. A weighted pagerank-based algorithm for virtual machine placement in cloud computing
Sun et al. Multi-dimensional resource integrated scheduling in a shared data center
CN113504998A (en) Method, device and equipment for determining task scheduling scheme
Ananth et al. Cooperative game theoretic approach for job scheduling in cloud computing
CN112380016A (en) Cloud computing resource load balancing scheduling method based on improved genetic algorithm and application
Amini Motlagh et al. A new reliability‐based task scheduling algorithm in cloud computing
Quarati et al. Moea-based brokering for hybrid clouds
Hu et al. A two-stage multi-objective task scheduling framework based on invasive tumor growth optimization algorithm for cloud computing
Krishnadoss et al. RCOA Scheduler: Rider Cuckoo Optimization Algorithm for Task Scheduling in Cloud Computing.

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