CN114595914B - Workflow scheduling method and system for cloud environment - Google Patents
Workflow scheduling method and system for cloud environment Download PDFInfo
- Publication number
- CN114595914B CN114595914B CN202110848307.7A CN202110848307A CN114595914B CN 114595914 B CN114595914 B CN 114595914B CN 202110848307 A CN202110848307 A CN 202110848307A CN 114595914 B CN114595914 B CN 114595914B
- Authority
- CN
- China
- Prior art keywords
- population
- dominant
- cloud environment
- dominant solution
- workflow
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 75
- 230000002068 genetic effect Effects 0.000 claims abstract description 34
- 230000008859 change Effects 0.000 claims abstract description 23
- 238000005457 optimization Methods 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims abstract description 17
- 238000012549 training Methods 0.000 claims description 13
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 210000002569 neuron Anatomy 0.000 claims description 4
- 230000000306 recurrent effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 20
- 239000013598 vector Substances 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000007613 environmental effect Effects 0.000 description 9
- 238000002474 experimental method Methods 0.000 description 7
- 230000003068 static effect Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 4
- 238000013459 approach Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Educational Administration (AREA)
- Evolutionary Computation (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Development Economics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention provides a workflow scheduling method facing a cloud environment, which comprises the following steps: submitting task workflows to be scheduled to a cloud environment; acquiring service requirements corresponding to the workflow; randomly initializing a population according to a preset population scale based on the current cloud environment; taking the service requirement corresponding to the workflow as an optimization target, and adopting a second generation non-dominant sorting genetic algorithm to carry out multiple genetic iterations on the initialized population until reaching a preset maximum iteration number so as to obtain a final population; when the cloud environment changes in the population iteration process, based on individuals in the current population, predicting new individuals corresponding to the changed cloud environment according to the change rule of non-dominant solutions in the historical cloud environment by adopting a pre-trained sequence to sequence model, and placing the new individuals in the current population for the next genetic iteration until the preset maximum iteration times are reached; and selecting non-dominant solutions in the final population to distribute tasks in the task workflow to the virtual machines according to the virtual machine number sequences corresponding to the non-dominant solutions.
Description
Technical Field
The invention relates to the field of cloud computing, in particular to the field of task execution in a cloud environment, and more particularly relates to a workflow scheduling method facing the cloud environment.
Background
Workflows are often used to simulate large-scale scientific problems in the fields of bioinformatics, astronomy, physics, etc., and these workflows are often modeled as a set of tasks that rely on interconnections through data or computation. In the context of the internet of things, real-time streaming data such as sensor data and collected real-time video data need to be finally served by intelligent decision services through a plurality of processing tasks, and the processing tasks are generally organized and represented in a workflow form, and a high-performance computing environment is needed to meet the demands of users. Cloud computing, as a recent development of distributed computing, grid computing and parallel computing, can provide large-scale computing resources, and is an applicable environment for running large-scale workflows. Therefore, how to map tasks in workflow applications onto available resources in cloud or cloud-edge environments and optimize the goals in QoS as much as possible is a major concern for distributed workflow scheduling. One common approach is to linearly combine multiple objectives in QoS, converting them into a single objective optimization problem for solution, however, this approach is limited by how the weight parameters are set correctly. The other method is to model the problem as a multi-objective optimization problem with constraint, and a non-dominant solution set with better diversity and convergence can be obtained in a shorter time by adopting a multi-objective evolutionary algorithm. However, for a workflow oriented to data processing of the internet of things, the rate of data generated by a data source may vary greatly with time, while a basic static multi-objective evolutionary algorithm has strong diversity due to population searching, so that when the environment changes, the population may lose diversity, and a non-dominant solution set with better diversity in a new environment cannot be obtained, so that uncertainty caused by time change of an objective function, constraint, environmental parameter or problem characterization cannot be well adapted. While re-initializing the population as the environment changes may solve this problem, the process of re-convergence of the population may significantly reduce algorithm efficiency.
Disclosure of Invention
As described above, the inventors found in practical studies that static multi-objective evolutionary algorithms often do not adapt well to environmental changes due to the inability to maintain population diversity in a dynamic environment. Therefore, an object of the present invention is to overcome the above-mentioned drawbacks of the prior art, and to provide a workflow scheduling method and system for cloud environment, which can maintain population diversity in a dynamically changing environment.
According to a first aspect of the present invention, there is provided a workflow scheduling method for a cloud environment, configured to select a scheduling scheme for the cloud environment and allocate task workflows related to the cloud environment to virtual machines on the cloud environment for execution based on the scheduling scheme, the method comprising: providing an exchange data workflow application to a cloud environment, wherein the flow data workflow application is a task workflow to be scheduled; acquiring service requirements and constraints corresponding to a workflow to be scheduled; based on the current cloud environment, randomly initializing a population according to a preset population scale, wherein each individual in the population corresponds to a scheduling scheme, the scheduling scheme is a virtual machine number sequence for executing a task workflow, and each bit in the scheduling scheme corresponds to a virtual machine number to be allocated to a task in the workflow; taking the service requirement corresponding to the workflow as an optimization target, and adopting a second generation non-dominant sorting genetic algorithm to carry out multiple genetic iterations on the initialized population until reaching a preset maximum iteration number so as to obtain a final population; when the cloud environment changes in the population iteration process, based on individuals in the current population, a pre-trained sequence to sequence model is adopted to predict new individuals corresponding to the changed cloud environment according to the change rule of non-dominant solutions in the historical cloud environment, and the new individuals are put into the current population for the next genetic iteration until the preset maximum iteration times are reached; and selecting a non-dominant solution in the final population, and performing workflow scheduling based on the non-dominant solution to distribute tasks in the task workflow to the virtual machines according to a virtual machine number sequence corresponding to the non-dominant solution, wherein the non-dominant solution is an individual optimizing service requirements in the population.
Preferably, the sequence-to-sequence model is pre-trained by: s1, aiming at a plurality of continuously-changed cloud environments, acquiring non-dominant solution sets corresponding to each cloud environment, wherein each non-dominant solution set comprises a plurality of non-dominant solutions; s2, carrying out unidirectional pairing on the non-dominant solutions in the non-dominant solution sets of adjacent cloud environments to obtain non-dominant solution pairs, wherein the non-dominant solution pairs of the non-dominant solution sets of the previous cloud environment point to the non-dominant solution with the nearest Euclidean distance in the non-dominant solution sets of the next cloud environment, and each non-dominant solution is paired only once; and S3, training the sequence-to-sequence model by using a data set formed by all non-dominant solution pairs until convergence. Preferably, the sequence-to-sequence model includes an encoder configured as a recurrent neural network containing 128 neurons and a decoder configured as a recurrent neural network containing 128 neurons and one linear layer. In some embodiments of the invention, the loss is calculated using a cross entropy loss function when training the sequence-to-sequence model, and convergence is determined when the loss error is less than or equal to 0.05.
Preferably, the non-dominant solution set corresponding to each cloud environment is obtained by the following method: based on the current cloud environment, carrying out genetic iteration of a preset round number by adopting a second generation non-dominant sorting genetic algorithm to obtain a plurality of final populations, selecting non-dominant solutions from each final population, and combining and de-duplicating to form a non-dominant solution set corresponding to the cloud environment; each round of genetic iteration refers to randomly initializing a population according to a preset population scale based on a current cloud environment, and carrying out genetic iteration on the initialized population for a plurality of times by adopting a second generation non-dominant sorting genetic algorithm until the preset maximum iteration times are reached to obtain a final population. The preset number of wheels is an integer greater than or equal to 100.
In some embodiments of the invention, the method further comprises: when the cloud environment changes in the population iteration process, based on a non-dominant solution set of the current cloud environment, a pre-trained sequence-to-sequence model is adopted to predict a new individual corresponding to the changed cloud environment according to the change rule of the non-dominant solution in the historical cloud environment, and the new individual is put into the current population for the next genetic iteration until the preset maximum iteration times are reached.
In some embodiments of the invention, the service requirements include: the optimization objective is to minimize the total cost, and/or the maximum completion time, and/or the imbalance of the task allocation.
Preferably, the preset population size is an integer greater than or equal to 100, and the preset iteration number is an integer greater than or equal to 500.
According to a second aspect of the present invention, there is provided a workflow scheduling system for a cloud environment, configured in the cloud environment, for selecting an appropriate scheduling scheme for the cloud environment to allocate task workflows related to the cloud environment to virtual machines on the cloud environment for execution, the system comprising: the task interface module is used for acquiring a task workflow to be scheduled; the NSGA-II module is used for carrying out genetic iteration on the population randomly initialized according to the preset population scale based on the current cloud environment for a plurality of times until the preset maximum iteration number is reached to obtain a final population; the Seq2Seq model is used for predicting new individuals corresponding to the changed cloud environment according to the change rule of the non-dominant solution in the historical cloud environment based on the individuals in the current population when the cloud environment changes in the population iteration process, and placing the new individuals into the current population for the next genetic iteration; and the scheduling engine is used for selecting a non-dominant solution from the final population, and performing workflow scheduling based on the non-dominant solution to distribute tasks in the task workflow to the virtual machines according to the virtual machine number sequences corresponding to the non-dominant solution, wherein the non-dominant solution is an individual optimizing the service requirement in the population. Preferably, the preset population size is an integer greater than or equal to 100, and the preset iteration number is an integer greater than or equal to 500.
Compared with the prior art, the invention has the advantages that: the new individuals are predicted to participate in iteration when the environment changes through the Seq2Seq model, so that the problem of definite population diversity in static target optimization is well solved, population convergence is accelerated, and a non-dominant solution set with good diversity and convergence can be obtained.
Drawings
Embodiments of the invention are further described below with reference to the accompanying drawings, in which:
FIG. 1 is a schematic diagram of the RNN standard architecture adopted by the Seq2Seq model according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a structure of a Seq2Seq model using the RNN standard structure shown in FIG. 1 according to an embodiment of the present invention:
FIG. 3 is a schematic diagram of an example of modeling a workflow in accordance with an embodiment of the invention;
FIG. 4 is a schematic diagram of an example of a sub-region according to an embodiment of the invention;
FIG. 5 is a flowchart of a workflow scheduling method for cloud environment according to an embodiment of the present invention;
FIG. 6 is a non-dominant solution comparison diagram of a single NSGA-II algorithm and multiple NSGA-II algorithms according to an embodiment of the invention;
FIG. 7 is a schematic diagram of continuous ambient non-dominant solution motion according to an embodiment of the invention;
fig. 8 is a schematic diagram of a variation rule of a Seq2Seq model learning scheduling scheme according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention will be further described in detail by means of specific examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
The inventors have found through research that changes in workflow execution environments tend to be continuous and correlated, and that dynamic environmental changes may exhibit some predictable patterns, so that past environmental information and corresponding solutions are utilized in the embodiments described below to predict new solutions under continuous environmental changes. Therefore, when the environment changes and needs to be re-optimized, the predicted solutions can be added into the population for co-evolution, so that the problem of missing of population diversity can be well solved, and the algorithm can be helped to quickly converge under a new environment.
In the embodiment of the invention, the dynamic scheduling problem of the workflow on the cloud facing the data processing of the Internet of things is modeled as a dynamic multi-objective optimization problem, wherein the dynamics are derived from load changes, and the objectives of the optimization include maximum completion time, total cost and unbalance degree. In order to solve the diversity loss and the real-time requirement of dynamic scheduling brought by a multi-objective evolutionary algorithm, the invention provides a DNSGA-II-Seq2Seq method, and the algorithm utilizes a Seq2Seq model to learn the local non-dominant solution change rule in a continuous environment, predicts a solution with better adaptability in a new environment, and increases population diversity. The local non-dominant solution refers to an individual that optimizes the target in a corresponding population under a certain environment.
For a better understanding of the present invention, the following briefly describes the relevant concepts of the invention. It should be noted that, since there are many formulas in the conceptual description process, the formulas use a lot of letters, the number of letters is limited, and the problem of repeatedly using the same letters to represent different variables cannot be avoided, therefore, in each part of description, the meaning of the variables is further limited to distinguish different variables represented by the same letters in different places.
1. Multi-objective optimization problem
The Multi-objective optimization problem (MOP-objective Optimization Problem, MOP) is generally composed of decision variables, objective functions, and constraints, and can be written as shown in equation (1):
miny=F(x)=[f1(x),f2(x),…,fm(x)] (1)
s.t.gi(x)≤0,i=1,2,3,…p
hi(x)=0,i=1,2,3,…q
In the formula (1), F (x) represents a target vector composed of a function to be optimized, x= (x 1,x2,…,xn) e D is called a decision vector, n represents the number of decision vectors, y= (F 1(x),f2(x),…,fm (x))ey is called a target vector, m represents the number of targets to be optimized, g i (x) and h i (x) are called constraints, p and q represent the number of two constraints, i represents the ith constraint, D is a decision space, and Y is a target space.
The following definitions are given:
Definition 1: for two possible solutions x 1 and x 2 to the MOP problem, the corresponding objective functions F (x 1) and F (x 2) satisfy equations (2) and (3):
the feasible solution x 1 Pareto (Pareto) is said to dominate x 2, denoted as x 1>x2, where i in equation (2) and equation (3) represents the i-th optimization objective.
Definition 2: feasible solution x * to MOP problem if forNone of the x Pareto dominant x * exists, then the feasible solution x * is referred to as the non-dominant solution, and may also be referred to as the Pareto optimal solution. The set of all non-dominant solutions is called Pareto optimal solution set (POS, pareto Optimal Set).
2. Second generation non-dominant ranking genetic algorithm (NSGA-II algorithm)
NSGA algorithms preserve good individuals in a population by non-dominant ranking based methods and preserve diversity of the population using fitness sharing function, whereas non-dominant ranking algorithms are more complex and lack elite strategies. The NSGA-II algorithm is improved on the basis, a rapid non-dominant sorting algorithm is provided, elite strategies, crowding degree and crowding degree comparison operators are introduced, crowding degree is used as comparison criteria among individuals in a population, the individuals in the population in a quasi-Pareto domain can be uniformly expanded to the whole Pareto domain, and therefore diversity of the population is guaranteed.
The basic idea of the NSGA-II algorithm can be summarized as: firstly, randomly generating an initial population with a scale of N (N is a preset population scale), and obtaining a first generation offspring population through three basic operations of selection, crossing and mutation of a genetic algorithm after non-dominant sorting; then, starting from the second generation, merging the parent population and the child population, carrying out rapid non-dominant sorting, simultaneously carrying out crowding degree calculation on individuals in each non-dominant layer, and selecting proper individuals to form a new parent population according to non-dominant relation and crowding degree of the individuals; finally, generating a new offspring population through basic operations of the genetic algorithm; and so on until the end condition is met to obtain the final population.
3. Sequence-to-sequence model (Seq 2Seq model)
The Sequence-to-Sequence (Seq 2 Seq) model is a model which is more used in the natural language processing technology at present, and is simply a translation model, and translates one language Sequence into another language Sequence, and consists of two parts, namely an encoder (encoder) and a decoder (decoder), wherein the encoder and the decoder can be any one of a CNN (convolutional neural network), an RNN (cyclic neural network) and a transducer. For convenience of description, the following embodiment of the present invention uses a Seq2Seq model of RNN-RNN structure, wherein RNN uses a standard structure as shown in fig. 1, and a schematic diagram of the structure of the composed Seq2Seq model is shown in fig. 2. In fig. 1, X (X) represents an input sequence, Y (X) represents an output, H (X) represents hidden status information, and RNN standard structure is a common structure of a neural network, which is not repeated here. In fig. 2, X1, X2, X3, and X4 denote inputs, C1, C2, and C3 denote vectors of input data encoded by an encoder, and Y1, Y2, and Y3 denote output sequences decoded by a decoder. It can be seen that the basic idea of the Seq2Seq model shown in fig. 2 is to use two RNNs, one RNN being the encoder and the other RNN being the decoder, the encoder being responsible for compressing the input sequence into a vector of a specified length, which vector can be seen as the semantics of the sequence, this process being called encoding, and the decoder being responsible for generating the specified sequence from the semantic vector, this process also being called decoding. The workflow is to be processed in the embodiment of the invention, and the corresponding scheduling scheme is a virtual machine number sequence.
Embodiments of the present invention will be described in detail below with reference to the accompanying drawings. In an embodiment of the invention, a streaming data processing workflow application is modeled first, and then a scheduling problem of the workflow on a cloud environment is converted into a multi-objective optimization problem to be considered and solved. As mentioned in the background, a workflow is typically modeled as a set of tasks interconnected by data or computational dependencies, whereby in one embodiment of the invention, the workflow application w= (T, E) is modeled as a Directed Acyclic Graph (DAG), where t= (T 1,t2,…,tn) represents the set of tasks, where n represents the number of tasks, e= (E 1,e2,…,em) represents the set of directed edges, where m represents the number of directed edges. FIG. 3 shows an example of a workflow modeling diagram, where (t 1,t2,…,t8) represents a task set and (e 1,e2,…,e8) represents a directed edge set. For streaming data processing workflow applications, the rate at which data is generated by the data source varies, and thus the amount of data that needs to be processed per unit time for a single task in the workflow varies. In this regard, in one embodiment of the invention, each service unit (task) is further modeled as T i=(MIi,λi,γi (where i represents the ith task in the task set T), where MI i represents the amount of work that the unit needs to handle one unit of data, λ i represents the rate of the incoming data stream, and γ i represents the rate of the data stream generated by the service.
In one embodiment of the present invention, some simplification may also be made to the edge computing environment in the cloud environment, modeling the cloud environment, edge environment as a fully connected environment of multiple cluster centers, and the workflow application is denoted as w= (C, B, D), except that when setting bandwidth and computing power, the hosts on the edge servers will be distinguished from hosts in the cloud. Where c= (C 1,c2,…,cn) here represents a cloud, edge, end hybrid environment, n here represents the number of clusters center, which may be represented as a topological connection of multiple clusters, B, D is a bandwidth matrix and a data transmission cost matrix, respectively. For a single cluster center C g, there isWhereinRepresenting the particular virtual machine numbered i in cluster center C g, U g represents the bandwidth inside each virtual machine in cluster center Cg. For a single virtual machineHas the following componentsWhereinRepresenting computing power,Representing the computational cost.
In one embodiment of the present invention, the goal of workflow scheduling is to minimize the overall cost, maximum completion time, and task allocation imbalance, which are described below with reference to the description of the above embodiments.
The total cost, also called total cost, consists of two parts, namely calculation cost and transmission cost. When the task instance starts to run, the data accessed to the task needs to be transmitted at the cost, and the data processing process needs to calculate the cost. In the embodiment of the invention, the calculation mode of the calculation cost is that the floating point number calculated every second of the deployed virtual machine is converted into the time required to be executed, and then the calculation cost is converted into the calculation cost according to the execution time, wherein the transmission cost refers to the sum of the data transmission costs transmitted to the task by all father nodes, and the calculation mode is shown in a formula (4):
Where t n denotes a single task n that needs to calculate a transmission cost, the transmission cost denotes the sum of the data transmission costs transmitted into the task by all the parent nodes, t i denotes the ith of the parent nodes of t n, and c (t i) denotes the transmission cost of a single parent node t i to t n. If the parent node and child node are on the same virtual machine, there is no transmission cost. If not on the same virtual machine, the transmission cost is equal to the transmission quantity multiplied by the transmission cost matrix, out (t n) refers to the transmission quantity of the parent node, D represents the transmission cost matrix, and D (C g(ti),Cg(tn)) represents the unit transmission cost of two nodes, namely t i and t n
The system maximum completion time refers to the time that all task units in the workflow are completed. The execution of tasks in the workflow must satisfy their defined data dependencies, so each task execution must wait for all its predecessor tasks to complete, and therefore there are equations (6) (7) (8) below, where T Final represents the system maximum completion time.
The imbalance degree of task allocation mainly calculates the difference of the number of tasks allocated to different data centers, wherein the calculation mode is shown in a formula (9), N represents the number of tasks allocated to each cluster, N max represents the maximum number of tasks, N min represents the minimum number of tasks, and N avg represents the average number of tasks:
after the modeling of the application of the workflow for processing the streaming data is completed, the scheduling problem of the workflow on the cloud environment can be converted into a multi-objective optimization problem to be considered and solved.
When the workflow scheduling problem is converted into the multi-objective optimization problem to solve, the decision variables correspond to a scheduling scheme, the scheduling scheme is a virtual machine number sequence for executing the workflow of the task, each bit in the scheduling scheme corresponds to a virtual machine number to be allocated to the task in the workflow, and all the decision variables form a decision space. The objective function corresponds to a user-specified objective (i.e., service demand), including in embodiments of the invention, total cost, maximum completion time, and imbalance in task allocation; the constraints correspond to some constraints that the decision vector translates into a scheduling scheme, including that the values in the decision vector must be integers greater than zero and less than the maximum virtual machine number (since each bit of the scheduling scheme corresponds to a virtual machine number to be assigned). The target space corresponds to the space formed by the target values of all decision vectors on all target functions, which is understood herein to be the space formed by the target vectors of the total cost, maximum completion time and unbalance for each scheduling scheme.
In addition, the sub-regions are described for ease of understanding. In the decision space, each scheduling scheme can be regarded as a point of the region, and the target vector corresponding to each scheduling scheme can also be regarded as a point in the target space, and for each non-dominant solution, the region formed by pareto dominant solutions can be regarded as a sub-region of the whole decision space, and the non-dominant solution is the locally optimal solution of the region. The simple case of two targets is illustrated, where the target function is only two, i.e. the target vector is two-dimensional and the target space is two-dimensional. As shown in fig. 4, each point represents a corresponding target vector (i.e., a target value that needs to be optimized, set to be smaller and better) of each decision vector (i.e., scheduling scheme) on the two targets. It can be seen that the open dots cannot be dominated by other points, which are called non-dominated solutions, such as the non-dominated solution t in the figure, for which there is a solution in the decision space, i.e. the black dots in the box in fig. 4, and that these solutions dominated by t may constitute a region, i.e. the sub-region in the figure, where the solutions are dominated by t, and thus the non-dominated solution t may also be called the locally optimal solution for this region.
The dynamic workflow scheduling problem is a multi-objective optimization problem with dynamic characteristics, and an algorithm is required to respond to environmental changes effectively, while the traditional static multi-objective optimization cannot respond to environmental changes effectively. In the embodiment of the invention, a prediction model is adopted, and the prediction model is used for learning the change rule of a local optimal solution under the continuous environment, namely learning the change rule of a virtual machine number sequence allocated by tasks under the continuous environment, predicting a new individual when the environment changes, and adding the new individual into the population for genetic iteration to solve the problem of population diversity deficiency during the environment change.
The embodiment of the invention adopts a method based on a prediction model, and mainly has two aspects. Firstly, the convergence speed of the algorithm is reduced by randomly initializing individuals in a population, and the algorithm can not be converged when the environment is rapidly changed, so that the algorithm is not suitable for the problem of dynamic workflow scheduling for stream data processing. The method for adding the prediction model can predict and generate solutions which can be well adapted to new environments when the environments change, and helps the algorithm to converge rapidly. And secondly, for continuous change of the data generation rate, if an algorithm based on a memory model is adopted, a large amount of data may need to be stored, so that more memory resources are consumed, and the reuse rate is correspondingly reduced. The method based on the prediction model only needs to store the model related data after the model training is completed. After the Seq2Seq prediction model is adopted in the embodiment of the invention, the scheduling scheme with better adaptability on the service requirement in the changed environment can be predicted by learning the change rule of the local optimal solution in the continuous environment, namely learning the change rule of the virtual machine number sequence allocated by the task in the continuous environment.
In the embodiment of the invention, a non-dominant solution set in a single environment is obtained by adopting an NSGA-II algorithm, a data set is constructed according to the continuity of environmental change and the corresponding relation of a local optimal solution, and a Seq2Seq model is adopted to learn the change rule of the local optimal solution. After model training is completed, if cloud environment changes (such as data generation rate changes) in an NSGA-II algorithm iteration process, individuals in a new environment are predicted according to a non-dominant solution of the current environment through a Seq2Seq model, and the individuals are added into a population to participate in iterative evolution, so that population diversity is increased, and convergence is quickened.
For a better understanding of the present invention, several aspects of the collection of data, data set construction and the Seq2Seq model are described in more detail below in connection with the accompanying drawings and examples.
Fig. 5 shows a flowchart of a workflow scheduling method for cloud environment according to an embodiment of the present invention, as shown in fig. 5, mainly including the following steps:
T1, submitting a streaming data workflow application: namely workflow applications that need to be scheduled on the cloud environment;
T2, specified service requirements and constraints: the service requirement is the target of optimization, the total cost, the maximum finishing time and the unbalance of task allocation are adopted in the embodiment of the invention, and the constraint refers to some constraints of the decision vector conversion into a scheduling scheme;
And T3, collecting non-dominant solution sets in the past continuous environment: namely collecting a set formed by a locally optimal scheduling scheme in the previous cloud environment; from the foregoing description, it is clear that the non-dominant solution set obtained by NSGA-II algorithm can well represent the locally optimal solution found from each sub-region, however, the random initialization process of the population in NGSA-II algorithm brings some randomness to the algorithm, so that if NSGA-II algorithm is done only once in a certain environment, some noise data may be brought. In view of this problem, in one embodiment of the present invention, the NSGA-II algorithm is repeated for the same environment for K (K is a preset number of rounds, for example, the preset number of rounds may be an integer greater than 100) times to obtain K different non-dominant solution sets, then the non-dominant solution sets are combined and de-duplicated, and then the fast non-dominant sorting is performed, and finally only the non-dominant solutions in the combined solution sets are taken. As shown in FIG. 6, the comparison of the non-dominant solution sets obtained by the single NGSA-II algorithm and the multiple NGSA-II algorithms is shown, wherein the discrete points are non-dominant solutions obtained by the word NGSA-II algorithm, the lines are non-dominant solutions obtained by the multiple NGSA-II algorithms, and as can be seen in FIG. 6, the solution sets obtained by the multiple algorithms are obviously superior to the solutions obtained by the single algorithm from the values of diversity and target space. The final set of non-dominant solutions obtained in each environment may be referred to herein as archive R.
T4, constructing a data set: a dataset for training the sequence-to-sequence model is constructed from the non-dominant solution set collected in step T3. Through archives R 1,R2,…,Rm under each environment collected in step T3, m represents the number of environment archives, and a training set is constructed to learn the local optimal change rule. For two continuous environments R j-1 and R j, two adjacent nearest local optimal solutions belong to the same sub-region, the motion of the local optimal solutions can be expressed in pairs, as shown in fig. 7, which is the motion of the local optimal solutions in the two continuous environments, and the corresponding relationship of non-dominant solutions is found by calculating the euclidean distance of the solutions in the decision space, and the calculation method is shown in formula (10):
Wherein p and t represent solutions from R j-1 and R j, respectively, D represents the dimension of the decision space, and the nearest non-dominant solution pairs are continuously found through the euclidean distance, and all the non-dominant solution pairs form a training dataset v= { (p 1,t1),……,(pQ,tQ) }, and it is to be noted that each non-dominant solution pair can only be paired once, and if the number of solutions existing in the previous environment and the number of solutions archived in the next environment are different, only the nearest non-dominant solution pair is selected;
Training a T5 and Seq2Seq model: training the Seq2Seq model by adopting the data set constructed in the last step. As described above, the Seq2Seq model is composed of Encoder and Decoder, the invention adopts simple RNN to realize the two parts, the input of Encoder is referred to as enc_input, the input of Decoder is referred to as dec_input, the output of Decoder is referred to as dec_output, for Encoder, only the output of the information of the hidden state at the last moment after the input of enc_input is calculated, then the output of Encoder is used as the input of the hidden state at the initial moment of the Decoder, and the first bit of the sequence to be mapped is input, so as to obtain the first bit of the output and the new hidden state. Repeating the steps to obtain dec_output, inputting dec_output into the linear layer to convert dec_output into a sequence. Since the training process of the Seq2Seq model is prior art, no further description is given here. The Seq2Seq model is often used for natural language translation, and can well learn the corresponding relation between language sequences. According to the invention, the scheduling scheme is regarded as a sequence of virtual machine numbers, the change rule of the locally optimal scheduling scheme under different environments can be learned through the data set constructed in the last step, as shown in fig. 8, which is a schematic diagram of the change rule of the scheduling scheme learned by a Seq2Seq model, and the trained Seq2Seq model can predict the scheduling scheme of the next environment according to the scheduling scheme of the previous environment.
T6, initializing population: NSGA-II requires the random generation of individuals and then the population of individuals, where some scheduling schemes are randomly generated according to a preset population size; according to one embodiment of the invention, the predetermined population size is an integer greater than 100.
T7, iterative evolution: the static NSGA-II algorithm mainly selects individuals with high fitness according to the fitness of the individuals (namely, the fitness on each target), and then performs operations such as cross mutation and the like to generate the next generation. In this way, excellent genes in the population are inherited, individuals in the population are optimized towards the target, after the preset maximum iteration times are reached, non-dominant solutions of the population are taken, then the tasks in the workflow are distributed with virtual machines and other resources in sequence according to the virtual machine coding sequences in the scheduling schemes corresponding to the non-dominant solutions, and the algorithm is ended. The preset maximum number of iterations according to one embodiment of the present invention is an integer greater than 500.
If the cloud environment changes during the iterative evolution of the population, individuals may all have evolved in a certain direction due to the iteration of the population, and the diversity of the individuals may be lost in the new environment. At this time, the scheduling schemes under the current environment are mapped to the scheduling schemes which are well adapted under the new environment through the trained Seq2Seq model, the scheduling schemes (namely, individuals of the population) are added into the population, and then the problem of lack of diversity of the population can be solved through co-iterative evolution.
In order to verify the effect of the present invention, the following is specifically explained in connection with experimental data.
The experiment of the invention is completed based on an improved WorkflowSim simulation platform, in order to verify the effectiveness of the method, classical scientific workflow is used as a basic workflow, and the data volume of an access service unit is modified to serve as the dynamic change of the data load. The algorithm implementation and the implementation of the relevant comparison algorithm were done in the Python programming language and all experiments were performed on Windows10 machines of the same configuration (Intel (R) Core (TM) i5-3470 CPU@3.20GHz,16G memory). The simulated cloud environment is 20 virtual machines, 512M, MIPS bits of memory of the virtual machines are 300 ten thousand, the population scale is 100, the maximum iteration number is 500, and the preset number of rounds is 100.
In order to verify the effectiveness of DNSGA-II-Seq 2-Seq algorithm proposed by the present invention, the inventors selected two other dynamic multi-objective optimization algorithms, including DNSGA-II-A algorithm and NN-DNSGA-II algorithm. The DNSGA-II-A algorithm is improved on the basis of the NSGA-II algorithm, and when the environment changes, the algorithm can randomly initialize some individuals to be added into the population, so that the problem that the population diversity of the algorithm is lost in a new environment is solved, but the result fluctuation is possibly larger due to a random process. NN-DNSGA-II algorithm is proposed by Ismayilov et al, which also adopts a model prediction method to cope with environmental changes, the model adopted by the algorithm is a simple full-connection network model, and the model can not learn the mapping relation between solutions well.
For ease of understanding, the effectiveness of the DNSGA-II-Seq 2-Seq algorithm is evaluated herein in two respects. On one hand, the evaluation is to evaluate the quality of new individuals added into the population, and on the other hand, the evaluation is to evaluate the quality of non-dominant solution sets obtained by the convergence of NSGA-II algorithm after the individuals are added under the new environment.
The quality of the new individuals is evaluated herein, using the HV (Hypervolume, super volume) index. The index can measure the space covered by the non-dominant solution relative to the reference point, and the specific calculation modes are shown in formulas (11) and (12):
HV(i)={i*∈Y:i<i*} (11)
HV(POF)=Ui∈POFHV(i) (12)
where Y represents the target space, POF represents the set of non-dominant solutions, and i represents the i-th non-dominant solution in the set of non-dominant solutions. The larger the HV indicator, the better the non-dominant solution set is distributed relative to the reference point, the higher the diversity of the solution. In the experiment, the values of all objective functions are normalized, and then the HV indicator is calculated with the (1, 1) point as the reference point.
The quality of the non-dominant solution set obtained by the final algorithm is evaluated by three indexes. The first index is the HV index mentioned above; the second is the lowest value of each dimension of the non-dominant solution set in the target space, and the index can intuitively evaluate the advantages and disadvantages of the results; the third is scott's spacing, which is a measure of the standard deviation of the minimum distance of each solution to the other solutions, and the smaller the measure, the more evenly distributed the solution sets are, as shown in equation (13):
Where p represents the non-dominant solution set POF, d i represents the Euclidean distance of the non-dominant solution i from the nearest non-dominant solution, Representing the average of all d i.
To evaluate the quality of individuals added to the population, the inventors conducted a number of consecutive experiments, the specific experimental results are shown in table 1 below, wherein the leftmost column represents the number of consecutive experiments, and the numerical values in the table are the average of the HV indicators of the number of consecutive experiments. Under the same conditions, the HV indexes of individuals generated by DNSGA-II-Seq 2-Seq algorithm are better than those of other algorithms in a new environment, the diversity of the individuals is better, the diversity of the population is more favorably increased, and therefore the problem that the population diversity of the algorithm is lost in a dynamic environment is better solved.
TABLE 1
To evaluate the effectiveness of the method, the inventors have also performed a number of consecutive experiments to evaluate the DNSGA-II-Seq 2-Seq algorithm, the specific experimental results are shown in tables 2 and 3, where the load represents the increase in the workflow load. Table 2 shows the minimum of the non-dominant solution set in each dimension of the target space after the three algorithms converge in the new environment, unbalance represents the imbalance, time represents the maximum completion Time, and Cost represents the total Cost. Table 3 shows the HV and Spacing indices for the non-dominant solution set obtained by these three algorithms.
TABLE 2
TABLE 3 Table 3
According to the experimental results, although the population random initialization process of the NSGA-II algorithm brings some randomness to the final result, the final result of the DNSGA-II-Seq2Seq algorithm is superior to other two classical algorithms in most cases from the aspects of the value of an objective function and the HV index and the Spacing index, and the effectiveness of the DNSGA-II-Seq2Seq algorithm in solving the dynamic multi-objective optimization problem is proved.
According to the experimental data, aiming at the scheduling problem of workflow oriented to data processing of the Internet of things on a cloud environment, the DNSGA-II-Seq2Seq algorithm of dynamic scheduling provided in the embodiment of the invention learns the local non-dominant solution change rule under a continuous environment through a Seq2Seq model, and when the environment changes, the solution under a new environment can be predicted according to the non-dominant solution under the current environment, so that the NSGA-II algorithm is helped to increase population diversity and quickly converge under the new environment.
It should be noted that, although the steps are described above in a specific order, it is not meant to necessarily be performed in the specific order, and in fact, some of the steps may be performed concurrently or even in a changed order, as long as the required functions are achieved.
The present invention may be a system, method, and/or computer program product. The computer program product may include a computer readable storage medium having computer readable program instructions embodied thereon for causing a processor to implement aspects of the present invention.
The computer readable storage medium may be a tangible device that retains and stores instructions for use by an instruction execution device. The computer readable storage medium may include, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing.
The foregoing description of embodiments of the invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the technical improvements in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.
Claims (13)
1. A workflow scheduling method for a cloud environment, the method comprising:
submitting task workflows to be scheduled to a cloud environment;
Acquiring service requirements corresponding to a workflow to be scheduled;
Based on the current cloud environment, randomly initializing a population according to a preset population scale, wherein each individual in the population corresponds to a scheduling scheme, the scheduling scheme is a virtual machine number sequence for executing a task workflow, and each bit in the scheduling scheme corresponds to a virtual machine number to be allocated to a task in the workflow;
Taking the service requirement corresponding to the workflow as an optimization target, and adopting a second generation non-dominant sorting genetic algorithm to carry out multiple genetic iterations on the initialized population until reaching a preset maximum iteration number so as to obtain a final population; when the cloud environment changes in the population iteration process, based on individuals in the current population, predicting new individuals corresponding to the changed cloud environment according to the change rule of non-dominant solutions in the historical cloud environment by adopting a pre-trained sequence to sequence model, and placing the new individuals in the current population for the next genetic iteration until the preset maximum iteration times are reached; wherein the sequence-to-sequence model is pre-trained by: s1, aiming at a plurality of continuously-changed cloud environments, acquiring non-dominant solution sets corresponding to each cloud environment, wherein each non-dominant solution set comprises a plurality of non-dominant solutions; s2, carrying out unidirectional pairing on the non-dominant solutions in the non-dominant solution sets of adjacent cloud environments to obtain non-dominant solution pairs, wherein the non-dominant solution pairs of the non-dominant solution sets of the previous cloud environment point to the non-dominant solution with the nearest Euclidean distance in the non-dominant solution sets of the next cloud environment, and each non-dominant solution is paired only once; s3, training the sequence-to-sequence model by using a data set formed by all non-dominant solution pairs until convergence; the non-dominant solution set corresponding to each cloud environment is obtained by the following steps: based on the current cloud environment, carrying out genetic iteration of a preset round number by adopting a second generation non-dominant sorting genetic algorithm to obtain a plurality of final populations, selecting non-dominant solutions from each final population, and combining and de-duplicating to form a non-dominant solution set corresponding to the cloud environment; each round of genetic iteration refers to randomly initializing a population according to a preset population scale based on a current cloud environment, and carrying out genetic iteration on the initialized population for a plurality of times by adopting a second generation non-dominant sorting genetic algorithm until the preset maximum iteration times are reached to obtain a final population;
And selecting a non-dominant solution in the final population, and performing workflow scheduling based on the non-dominant solution to distribute tasks in the task workflow to the virtual machines according to a virtual machine number sequence corresponding to the non-dominant solution, wherein the non-dominant solution is an individual optimizing service requirements in the population.
2. The method of claim 1, wherein the loss is calculated using a cross entropy loss function when training the sequence-to-sequence model, and convergence is determined when the loss error is less than or equal to 0.05.
3. The method of any one of claim 1, wherein the predetermined number of rounds is an integer greater than or equal to 100.
4. The method according to claim 1, wherein the method further comprises:
when the cloud environment changes in the population iteration process, based on a non-dominant solution set of the current cloud environment, a pre-trained sequence-to-sequence model is adopted to predict a new individual corresponding to the changed cloud environment according to the change rule of the non-dominant solution in the historical cloud environment, and the new individual is put into the current population for the next genetic iteration until the preset maximum iteration times are reached.
5. The method of any of claims 1, wherein the service requirements comprise: the optimization objective is to minimize the total cost, and/or the maximum completion time, and/or the imbalance of the task allocation.
6. The method of claim 1, wherein the sequence-to-sequence model comprises an encoder configured as a recurrent neural network comprising 128 neurons and a decoder configured as a recurrent neural network comprising 128 neurons and one linear layer.
7. The method of any one of claims 1-6, wherein the predetermined population size is an integer greater than or equal to 100.
8. The method of any one of claims 1-6, wherein the predetermined number of iterations is an integer greater than or equal to 500.
9. A workflow scheduling system for a cloud environment, the system comprising:
The task interface module is used for acquiring a task workflow to be scheduled and corresponding service requirements thereof;
The NSGA-II module is used for carrying out genetic iteration on the population randomly initialized according to the preset population scale based on the current cloud environment for a plurality of times until the preset maximum iteration number is reached to obtain a final population;
The Seq2Seq model is used for predicting new individuals corresponding to the changed cloud environment according to the change rule of the non-dominant solution in the historical cloud environment based on the individuals in the current population when the cloud environment changes in the population iteration process, and placing the new individuals into the current population for the next genetic iteration; wherein the sequence-to-sequence model is pre-trained by: s1, aiming at a plurality of continuously-changed cloud environments, acquiring non-dominant solution sets corresponding to each cloud environment, wherein each non-dominant solution set comprises a plurality of non-dominant solutions; s2, carrying out unidirectional pairing on the non-dominant solutions in the non-dominant solution sets of adjacent cloud environments to obtain non-dominant solution pairs, wherein the non-dominant solution pairs of the non-dominant solution sets of the previous cloud environment point to the non-dominant solution with the nearest Euclidean distance in the non-dominant solution sets of the next cloud environment, and each non-dominant solution is paired only once; s3, training the sequence-to-sequence model by using a data set formed by all non-dominant solution pairs until convergence; the non-dominant solution set corresponding to each cloud environment is obtained by the following steps: based on the current cloud environment, carrying out genetic iteration of a preset round number by adopting a second generation non-dominant sorting genetic algorithm to obtain a plurality of final populations, selecting non-dominant solutions from each final population, and combining and de-duplicating to form a non-dominant solution set corresponding to the cloud environment; each round of genetic iteration refers to randomly initializing a population according to a preset population scale based on a current cloud environment, and carrying out genetic iteration on the initialized population for a plurality of times by adopting a second generation non-dominant sorting genetic algorithm until the preset maximum iteration times are reached to obtain a final population;
and the scheduling engine is used for selecting a non-dominant solution from the final population, and performing workflow scheduling based on the non-dominant solution to distribute tasks in the task workflow to the virtual machines according to the virtual machine number sequences corresponding to the non-dominant solution, wherein the non-dominant solution is an individual optimizing the service requirement in the population.
10. The system of claim 9, wherein the predetermined population size is an integer greater than or equal to 100.
11. The system of claim 9, wherein the predetermined number of iterations is an integer greater than or equal to 500.
12. A computer readable storage medium having embodied thereon a computer program executable by a processor to perform the steps of the method of any of claims 1 to 8.
13. An electronic device, comprising:
One or more processors;
Storage means for storing one or more programs which, when executed by the one or more processors, cause the electronic device to perform the steps of the method of any of claims 1-8.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110848307.7A CN114595914B (en) | 2021-07-27 | 2021-07-27 | Workflow scheduling method and system for cloud environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110848307.7A CN114595914B (en) | 2021-07-27 | 2021-07-27 | Workflow scheduling method and system for cloud environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114595914A CN114595914A (en) | 2022-06-07 |
CN114595914B true CN114595914B (en) | 2024-06-07 |
Family
ID=81814469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110848307.7A Active CN114595914B (en) | 2021-07-27 | 2021-07-27 | Workflow scheduling method and system for cloud environment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114595914B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035816A (en) * | 2014-05-22 | 2014-09-10 | 南京信息工程大学 | Cloud computing task scheduling method based on improved NSGA-II |
CN106933650A (en) * | 2017-03-03 | 2017-07-07 | 北方工业大学 | load management method and system of cloud application system |
CN109992355A (en) * | 2019-01-30 | 2019-07-09 | 北京理工大学 | A kind of multiple target cloud workflow schedule method based on the non-dominant genetic algorithm of improvement |
CN110033076A (en) * | 2019-04-19 | 2019-07-19 | 福州大学 | Mix the Work stream data layout method below cloud environment to cost optimization |
CN111914873A (en) * | 2020-06-05 | 2020-11-10 | 华南理工大学 | Two-stage cloud server unsupervised anomaly prediction method |
CN112685138A (en) * | 2021-01-08 | 2021-04-20 | 北京理工大学 | Multi-workflow scheduling method based on multi-population hybrid intelligent optimization in cloud environment |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110688224B (en) * | 2019-09-23 | 2021-11-23 | 苏州大学 | Hybrid cloud service flow scheduling method |
US11481418B2 (en) * | 2020-01-02 | 2022-10-25 | International Business Machines Corporation | Natural question generation via reinforcement learning based graph-to-sequence model |
-
2021
- 2021-07-27 CN CN202110848307.7A patent/CN114595914B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035816A (en) * | 2014-05-22 | 2014-09-10 | 南京信息工程大学 | Cloud computing task scheduling method based on improved NSGA-II |
CN106933650A (en) * | 2017-03-03 | 2017-07-07 | 北方工业大学 | load management method and system of cloud application system |
CN109992355A (en) * | 2019-01-30 | 2019-07-09 | 北京理工大学 | A kind of multiple target cloud workflow schedule method based on the non-dominant genetic algorithm of improvement |
CN110033076A (en) * | 2019-04-19 | 2019-07-19 | 福州大学 | Mix the Work stream data layout method below cloud environment to cost optimization |
CN111914873A (en) * | 2020-06-05 | 2020-11-10 | 华南理工大学 | Two-stage cloud server unsupervised anomaly prediction method |
CN112685138A (en) * | 2021-01-08 | 2021-04-20 | 北京理工大学 | Multi-workflow scheduling method based on multi-population hybrid intelligent optimization in cloud environment |
Non-Patent Citations (1)
Title |
---|
杜艳明 等.云环境中基于混合多目标粒子群的科学工作流调度算法.计算机科学.2017,(第08期),第258-265页. * |
Also Published As
Publication number | Publication date |
---|---|
CN114595914A (en) | 2022-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Multiobjective cloud workflow scheduling: A multiple populations ant colony system approach | |
Kumar et al. | Genetic algorithms | |
Zhang et al. | An efficient multiobjective genetic algorithm for mixed-model assembly line balancing problem considering demand ratio-based cycle time | |
CN109840154B (en) | Task dependency-based computing migration method in mobile cloud environment | |
Qi et al. | Multi-objective immune algorithm with Baldwinian learning | |
CN109522104B (en) | Method for optimizing scheduling of two target tasks of Iaas by using differential evolution algorithm | |
Shu et al. | A modified hybrid rice optimization algorithm for solving 0-1 knapsack problem | |
CN112685138B (en) | Multi-workflow scheduling method based on multi-population hybrid intelligent optimization in cloud environment | |
Pooranian et al. | Hybrid metaheuristic algorithm for job scheduling on computational grids | |
Niu et al. | Towards the optimality of QoS-aware web service composition with uncertainty | |
CN117707795B (en) | Graph-based model partitioning side collaborative reasoning method and system | |
Younis et al. | Genetic algorithm for independent job scheduling in grid computing | |
CN114595914B (en) | Workflow scheduling method and system for cloud environment | |
He et al. | Hybrid teaching–learning-based optimization for workflow scheduling in cloud environment | |
CN112819172A (en) | Quantum computation simulation method and system based on table function | |
Harde et al. | Design and implementation of ACO feature selection algorithm for data stream mining | |
CN113747500B (en) | High-energy-efficiency low-delay workflow application migration method based on generation of countermeasure network in complex heterogeneous mobile edge calculation | |
CN113127167B (en) | Heterogeneous resource intelligent parallel scheduling method based on improved genetic algorithm | |
CN111858003B (en) | Hadoop optimal parameter evaluation method and device | |
CN114327853A (en) | Low-cost user association and computation migration method facing complex tasks in cloud-side hybrid system | |
Huang et al. | Elastic dnn inference with unpredictable exit in edge computing | |
CN113220437A (en) | Workflow multi-target scheduling method and device | |
Khanli et al. | LGR: the new genetic based scheduler for grid computing systems | |
Garshasbi et al. | High performance scheduling in parallel heterogeneous multiprocessor systems using evolutionary algorithms | |
CN117971348B (en) | Internet of things edge computing unloading method and system based on film 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 |