Cloud computing task scheduling method and device, electronic equipment and storage medium

By building a cloud computing task execution time model and using the bacterial foraging algorithm and Q-learning algorithm to optimize scheduling, the problems of low resource utilization and low computing efficiency in private clouds are solved, and efficient resource utilization and improved user experience are achieved.

CN119402556BActive Publication Date: 2025-10-10CHINA TELECOM CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411337427.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-24
Publication Date
2025-10-10
Estimated Expiration
2044-09-24

AI Technical Summary

Technical Problem

Improper scheduling of computing resources in existing private clouds leads to low resource utilization, low computing efficiency, and poor user experience.

Method used

A cloud computing task execution time model is constructed, and the bacterial foraging algorithm and Q-learning algorithm are used to optimize cloud computing task scheduling. The optimal scheduling scheme is determined by constructing a cloud computing task scheduling optimization model as the fitness function of the bacterial foraging algorithm.

Benefits of technology

It improves resource utilization, enhances computing efficiency, shortens the execution time of cloud computing tasks, and improves user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119402556B_ABST
    Figure CN119402556B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a cloud computing task scheduling method and device, electronic equipment and storage medium. The method comprises: obtaining a cloud scheduling dataset, the cloud scheduling dataset comprising a cloud computing task dataset and a virtual resource dataset; constructing a cloud computing task execution time model according to the cloud scheduling dataset, the cloud computing task execution time model being used to indicate an expected time for a virtual resource to process a cloud computing task in a scheduling scheme; constructing a cloud computing task scheduling optimization model according to the cloud computing task execution time model; determining a primary population of a bacterial foraging algorithm according to a Q-learning algorithm and the cloud scheduling dataset, the primary population representing an initial solution of the cloud computing task scheduling optimization model; optimizing the primary population according to the bacterial foraging algorithm to obtain an optimal solution, the optimal solution indicating an optimal scheduling scheme; and scheduling each cloud computing task according to the optimal solution of the cloud computing task scheduling optimization model. The embodiments of the present application can improve resource utilization and computing efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of cloud computing technology, and in particular to a cloud computing task scheduling method, device, electronic device, and storage medium. Background Art

[0002] A private cloud is built for a single customer, providing the most effective control over data, security, and service quality. For example, a municipal government cloud is a massive private cloud that hosts numerous systems, websites, data, and information, and is frequently accessed by a large number of users. The efficient operation of these private clouds is crucial. In daily operations, virtual resources with low computing power may be used to perform computationally intensive tasks, resulting in low efficiency, slow response times, and a poor user experience. Alternatively, virtual resources with high computing power may be used to perform computationally intensive tasks, leading to low resource utilization. Therefore, scheduling cloud computing tasks to improve resource utilization and computing efficiency is a pressing technical challenge. Summary of the Invention

[0003] The embodiments of the present application provide a cloud computing task scheduling method, device, electronic device, and storage medium, which help to improve resource utilization and computing efficiency.

[0004] To solve the above problems, in a first aspect, an embodiment of the present application provides a cloud computing task scheduling method, comprising:

[0005] Acquire a cloud scheduling dataset, where the cloud scheduling dataset includes a cloud computing task dataset and a virtual resource dataset;

[0006] constructing a cloud computing task execution time model based on the cloud scheduling data set, wherein the cloud computing task execution time model is used to indicate the expected time for virtual resources in the scheduling scheme to process the cloud computing task;

[0007] According to the cloud computing task execution time model, a cloud computing task scheduling optimization model is constructed, and the cloud computing task scheduling optimization model is used as the fitness function of the bacterial foraging algorithm;

[0008] Determining an initial population of the bacterial foraging algorithm based on a Q-learning algorithm and the cloud scheduling dataset, wherein the initial population represents an initial solution of the cloud computing task scheduling optimization model;

[0009] Optimizing the primary population according to the bacterial foraging algorithm to obtain an optimal solution of the cloud computing task scheduling optimization model, wherein the optimal solution of the cloud computing task scheduling optimization model indicates an optimal scheduling solution;

[0010] The cloud computing tasks in the cloud computing task dataset are scheduled according to the optimal solution of the cloud computing task scheduling optimization model.

[0011] In a second aspect, an embodiment of the present application provides a cloud computing task scheduling device, comprising:

[0012] A data acquisition module is used to acquire a cloud scheduling dataset, wherein the cloud scheduling dataset includes a cloud computing task dataset and a virtual resource dataset;

[0013] a time model building module, configured to build a cloud computing task execution time model based on the cloud scheduling data set, wherein the cloud computing task execution time model is used to indicate the expected time for virtual resources in the scheduling scheme to process the cloud computing task;

[0014] A scheduling module construction module is used to construct a cloud computing task scheduling optimization model according to the cloud computing task execution time model, and the cloud computing task scheduling optimization model serves as the fitness function of the bacterial foraging algorithm;

[0015] An initial population determination module is used to determine the initial population of the bacterial foraging algorithm based on the Q learning algorithm and the cloud scheduling dataset, wherein the initial population represents the initial solution of the cloud computing task scheduling optimization model;

[0016] an optimal solution determination module, configured to optimize the primary population according to the bacterial foraging algorithm to obtain an optimal solution of the cloud computing task scheduling optimization model, wherein the optimal solution of the cloud computing task scheduling optimization model indicates an optimal scheduling solution;

[0017] A scheduling module is used to schedule the cloud computing tasks in the cloud computing task data set according to the optimal solution of the cloud computing task scheduling optimization model.

[0018] In a third aspect, an embodiment of the present application further provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the cloud computing task scheduling method described in the embodiment of the present application when executing the computer program.

[0019] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the steps of the cloud computing task scheduling method disclosed in the embodiment of the present application are performed.

[0020] The cloud computing task scheduling method, device, electronic device and storage medium provided in the embodiments of the present application construct a cloud computing task execution time model, a cloud computing task scheduling optimization model, the cloud computing task scheduling optimization model serves as the fitness function of the bacterial foraging algorithm, determines the primary population of the bacterial foraging algorithm based on the Q learning algorithm and the cloud scheduling data set, the primary population represents the initial solution of the cloud computing task scheduling optimization model, optimizes the primary population based on the bacterial foraging algorithm, obtains the optimal solution of the cloud computing task scheduling optimization model, the optimal solution indicates the optimal scheduling scheme, and then the cloud computing tasks in the cloud computing task data set can be scheduled according to the optimal scheduling scheme. By determining the primary population of the bacterial foraging algorithm through the Q learning algorithm and the cloud scheduling data set, a better initial solution can be obtained, and then the initial solution can be further optimized based on the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model. Scheduling cloud computing tasks according to the optimal solution can improve resource utilization, improve computing efficiency, shorten the execution time of cloud computing tasks, and enhance user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0022] Figure 1 This is a flow chart of a cloud computing task scheduling method provided by an embodiment of the present application;

[0023] Figure 2 This is a flowchart of determining the initial population according to the Q learning algorithm in an embodiment of the present application;

[0024] Figure 3 This is a flow chart of optimizing the primary population according to the bacterial foraging algorithm in an embodiment of the present application;

[0025] Figure 4 This is a schematic diagram of the structure of a cloud computing task scheduling device provided in an embodiment of the present application;

[0026] Figure 5 This is a structural diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0028] Figure 1 This is a flow chart of a cloud computing task scheduling method provided by an embodiment of the present application. Figure 1 As shown, the method includes: steps 110 to 160.

[0029] Step 110: Acquire a cloud scheduling dataset, where the cloud scheduling dataset includes a cloud computing task dataset and a virtual resource dataset.

[0030] The cloud computing task dataset includes multiple cloud computing tasks and the number of instructions to be executed included in each cloud computing task. The virtual resource dataset includes multiple available virtual machine resources. In cloud computing, virtual machine resources refer to the abstraction of physical computing resources (such as servers, storage devices, network devices, etc.) through software technology to create a virtual computing environment. This virtual computing environment allows multiple virtual machines (VMs) or containers to run on the same physical device, and each VM or container is regarded as an independent logical entity. Virtual machine resources may include resources such as CPU, memory, disk, and network.

[0031] Obtain all the cloud computing tasks to be scheduled, express all the cloud computing tasks to be scheduled as a set, and obtain a cloud computing task dataset. The cloud computing task dataset can be expressed as ST = {st1, st2, st i …st m}, st i Represents the i-th subtask in the cloud computing task dataset, m represents the total number of cloud computing tasks, where i is a positive integer. Obtain all available virtual machine resources, express all available virtual machine resources in the form of a set, and obtain a virtual resource dataset. The virtual resource dataset can be expressed as VR = {vr1, vr2, vr j …vr n}, vr j represents the jth virtual resource in the virtual resource data set, n represents the total number of virtual machine resources, and j is a positive integer.

[0032] Step 120: construct a cloud computing task execution time model based on the cloud scheduling data set, where the cloud computing task execution time model is used to indicate the expected time for virtual resources in the scheduling solution to process the cloud computing task.

[0033] For each virtual resource in the cloud scheduling data set, the time for the virtual resource to execute each cloud computing task in the scheduling plan is determined, and then the expected time for the virtual resource to process the cloud computing task is obtained based on the time for the virtual resource to execute each cloud computing task. The relationship between the expected time and the time for the virtual resource to execute each cloud computing task is used as the cloud computing task execution time model.

[0034] In one embodiment of the present application, constructing a cloud computing task execution time model based on the cloud scheduling dataset includes:

[0035] For each virtual resource, determining an execution time for the virtual resource to process a target cloud computing task, where the target cloud computing task is a cloud computing task assigned to the virtual resource;

[0036] The minimum execution time among the execution times corresponding to each virtual resource in the virtual resource data set is used as the expected time.

[0037] Optionally, determining the execution time of the virtual resource processing the target cloud computing task includes: determining the execution time of the virtual resource processing the target cloud computing task based on the number of instructions to be executed of the target cloud computing task and the performance indicator value of the virtual resource.

[0038] For each virtual resource, the execution time of the target cloud computing task processed by the virtual resource can be determined based on the number of instructions to be executed by the target cloud computing task and the performance indicator value of the virtual resource. That is, the execution time of the target cloud computing task processed by the virtual resource can be determined by the following formula:

[0039]

[0040] Among them, ExeTime(j) represents the virtual resource vr j Processing target cloud computing task execution time, Speed j Represents virtual resources vr j Performance index value, Number i Represents the target cloud computing task st i The number of instructions to be executed, k represents the number of instructions allocated to the virtual resource vr j The number of target cloud computing tasks, st i →vr j , st i ∈ST represents virtual resource vr j All target cloud computing tasks processed, t i,j Represents virtual resources vr j Processing target cloud computing tasks iThe performance index value refers to the number of instructions processed by the virtual resource in unit time.

[0041] The minimum execution time among the execution times corresponding to each virtual resource in the virtual resource data set is taken as the expected time. That is, the expected time can be expressed by the following formula:

[0042] Makespan=min{ExeTime(j)|j∈Z,1≤j≤n}

[0043] Where Makespan represents the expected time, and n represents the number of virtual resources in the virtual resource dataset.

[0044] Step 130: construct a cloud computing task scheduling optimization model based on the cloud computing task execution time model, and use the cloud computing task scheduling optimization model as the fitness function of the bacterial foraging algorithm.

[0045] The cloud computing task scheduling optimization model is used to measure the pros and cons of various scheduling solutions. Optionally, the cloud computing task scheduling optimization model is a fitness function, and the smaller the calculated fitness function value, the better the scheduling solution.

[0046] In one embodiment of the present application, constructing a cloud computing task scheduling optimization model based on the cloud computing task execution time model includes:

[0047] averaging the execution time corresponding to each virtual resource in the virtual resource data set to obtain an execution time mean;

[0048] Determine an execution time standard deviation according to the execution time corresponding to each virtual resource in the virtual resource data set and the execution time mean;

[0049] A cloud computing task scheduling optimization model is constructed according to the expected time and the execution time standard deviation.

[0050] The mean execution time can be determined according to the following formula:

[0051]

[0052] Among them, Load j =ExeTime(j), indicating virtual resource vr j Processing target cloud computing task execution time; Load avg represents the mean execution time of all virtual resources; n represents the number of virtual resources.

[0053] The standard deviation of execution time can be determined according to the following formula:

[0054]

[0055] Among them, B L represents the standard deviation of execution time, n represents the number of virtual resources, Load avg Represents the mean execution time.

[0056] The cloud computing task scheduling optimization model can be expressed as follows:

[0057] f(X)=ω1Makepab+ω2B L

[0058] Among them, ω1 and ω2 represent weights, Makepab represents the expected time, B L represents the standard deviation of the execution time, f(X) represents the optimization index value, that is, the fitness function value, and the optimal solution of the cloud computing task scheduling optimization model minimizes the fitness function value.

[0059] Step 140: Determine an initial population of the bacterial foraging algorithm based on the Q learning algorithm and the cloud scheduling dataset, where the initial population represents an initial solution of the cloud computing task scheduling optimization model.

[0060] Among them, the Q-Learning algorithm is a reinforcement learning algorithm that solves the optimal strategy through trial and error, repeated exploration, and learning without prior environmental information. Based on the concept of dynamic programming, the Q-Learning algorithm uses a Q function to evaluate the long-term reward (i.e., state-action value) of each state-action pair and proposes the optimal strategy. The Bacterial Foraging Optimization (BFO) algorithm is a type of intelligent optimization algorithm that simulates the intelligent behavior exhibited by Escherichia coli when foraging in the human intestine. It achieves optimization through competition and collaboration between bacterial populations. It is a search technology based on bacterial populations and a relatively new optimization method formed by simulating the behavior of microorganisms.

[0061] The bacterial foraging algorithm is pre-learned based on the Q-learning algorithm. First, a bacterial population is randomly initialized and generated. Each bacterium in the bacterial population represents a scheduling scheme. The randomly generated bacterial population is optimized by the Q-learning algorithm, and the finally optimized bacterial population is used as the initial population of the bacterial foraging algorithm.

[0062] Step 150: Optimize the primary population according to the bacterial foraging algorithm to obtain an optimal solution of the cloud computing task scheduling optimization model. The optimal solution of the cloud computing task scheduling optimization model indicates an optimal scheduling solution.

[0063] The bacterial foraging algorithm is used to optimize the initial population and determine the optimal solution of the cloud computing task scheduling optimization model.

[0064] Wherein, the bacterial foraging algorithm has three typical behavior patterns, namely, the trend behavior, the replication behavior and the migration behavior. The trend behavior refers to the behavior of bacteria gathering in the area rich in food, including two patterns of turning and advancing. The turning refers to bacteria moving a certain distance in an arbitrary direction; the advancing refers to determining whether the bacteria should continue to move in the current direction by judging whether the fitness function value of the bacteria after turning is improved, if the fitness function value of the bacteria after turning is improved, moving in the current direction for a certain number of steps until the fitness function value is no longer improved, or reaching a predetermined moving step critical value. Through the trend behavior, the bacteria can obtain the ability of continuous optimization. The replication behavior is to select the bacteria with poor fitness function value to inherit the position and step length of the bacteria with good fitness function value, through which the optimization speed of the bacteria can be accelerated. The migration behavior is to let the bacteria be dispersed to an arbitrary position in the search space with a certain probability, through which the bacteria can be prevented from falling into a local extremum. The whole bacterial population forms an efficient and fast optimization mode by repeatedly repeating the three behaviors, and determines the final optimal value. The final optimal value is the optimal task scheduling scheme. Wherein, the basic process of the bacterial foraging algorithm includes:

[0065] 1) First, initialize the population: set the population size, the number of algorithm executions, etc. Select the fitness function, and the selection of the fitness function is determined according to the actual problem.

[0066] 2) Traverse each bacterial individual and calculate their fitness function values respectively.

[0067] 3) Evaluate the fitness function values of the three operations in the algorithm process. First, the trend evaluation is performed, and when the number of trend operation executions reaches the predetermined number of trend operations, the trend operation evaluation ends; then the replication operation evaluation is performed, and when the number of replication operations reaches the predetermined number of replication operations, the replication operation evaluation ends; finally, the dispersion (migration) operation evaluation is performed, and when the number of dispersion operations reaches the predetermined number of dispersion operations, the dispersion operation evaluation ends. When the number of trend operations, replication operations and dispersion operations reaches the predetermined number, the algorithm evaluation ends (Nc, Nre, Ned represent the predetermined number of trend operations, replication operations and dispersion operations that need to be executed, and the initial values of i, j and k are all 0).

[0068] 4) After evaluating the three operations, the bacteria that do not meet the conditions will be eliminated. Then, the fitness function values of the remaining bacteria are compared, and the bacteria with the largest fitness function value are selected as the optimal solution of the problem.

[0069] Step 160, according to the optimal solution of the cloud computing task scheduling optimization model, scheduling the cloud computing task in the cloud computing task data set.

[0070] The optimal solution represents the most appropriate scheduling scheme, that is, it gives which virtual resource is used to execute each cloud computing task. When scheduling each cloud computing task, the cloud computing task can be scheduled to the virtual resource corresponding to the cloud computing task in the optimal solution.

[0071] The cloud computing task scheduling method provided in the embodiment of the present application constructs a cloud computing task execution time model, constructs a cloud computing task scheduling optimization model, and uses the cloud computing task scheduling optimization model as the fitness function of the bacterial foraging algorithm. The primary population of the bacterial foraging algorithm is determined according to the Q learning algorithm and the cloud scheduling data set. The primary population represents the initial solution of the cloud computing task scheduling optimization model. The primary population is optimized according to the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model. The optimal solution indicates the optimal scheduling scheme, and then the cloud computing tasks in the cloud computing task data set can be scheduled according to the optimal scheduling scheme. By determining the primary population of the bacterial foraging algorithm through the Q learning algorithm and the cloud scheduling data set, a better initial solution can be obtained, and then the initial solution can be further optimized based on the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model. Scheduling cloud computing tasks according to the optimal solution can improve resource utilization, improve computing efficiency, shorten the execution time of cloud computing tasks, and enhance user experience.

[0072] On the basis of the above technical solution, the initial population of the bacterial foraging algorithm is determined according to the Q learning algorithm and the cloud scheduling data set, including:

[0073] determining an initial bacterial population according to the cloud scheduling dataset, wherein each bacterium in the initial bacterial population represents an initial scheduling scheme;

[0074] optimizing each bacterium in the initial bacterial population according to a bacterial foraging algorithm to obtain an intermediate bacterial population;

[0075] According to the Q-learning algorithm, the bacteria in the intermediate bacterial population are optimized to obtain a new intermediate bacterial population;

[0076] The process of optimizing the new intermediate bacterial population according to the bacterial foraging algorithm and optimizing according to the Q-learning algorithm is iteratively performed until the termination condition of the Q-learning algorithm is met, and the finally optimized bacterial population is used as the initial population.

[0077] During the initialization process, the Q learning algorithm parameters and the basic parameters of the bacterial foraging algorithm are initialized first. Among them, the main parameters of the Q learning algorithm are the number of forward steps M and the initial state S; the basic parameters of the bacterial foraging algorithm include the dimension of the search space, the size of the bacterial population, the number of times the bacteria perform directional behavior, the maximum number of steps in one direction during the directional operation, the number of times the bacteria perform replication behavior, the number of times the bacteria perform migration behavior (i.e., the preset number of migrations N)ed ), migration probability P ed , the stride length for swimming forward.

[0078] Initialize the bacterial population. Based on the cloud scheduling dataset, randomly generate a bacterial population in the search space. Perform chaos processing on the randomly generated bacterial population to obtain the initial bacterial population.

[0079] Alternatively, assuming that the number of virtual resources (i.e., virtual machines) is n (e.g., 10), and the number of cloud computing tasks is m, a bacterial population can be represented in the form of a matrix. The number of individuals in the bacterial population (i.e., the number of bacteria) is h, and each bacterial individual represents a scheduling scheme. The randomly generated bacterial population or the initial bacterial population can be represented by the following matrix B:

[0080]

[0081] Among them, a row in the matrix B represents a bacterial individual in the bacterial population, and the member x in the bacterial population i,j The value range of (i=1, 2, ..., h; j=1, 2, ..., m) is an integer in the range [1, n]. For example, x i,j =p means that the jth cloud computing task is processed by the pth virtual resource.

[0082] Optionally, chaotic processing is performed on the randomly generated bacterial population to obtain the initial bacterial population. All elements of the matrix B are randomly assigned random numbers within (0, 1), and the matrix B is subjected to chaotic processing. The chaotic processing calculation of all elements in the matrix B is performed using the following formula:

[0083] x n+1 =μx n (1-x n )

[0084] Among them, μ is the control variable, x n+1 It cannot be 0.25, 0.5, or 0.75. If it is 0.25, 0.5, or 0.75, it needs to be calculated again.

[0085] After determining the initial bacterial population, each bacterium in the initial bacterial population is optimized using the bacterial foraging algorithm to obtain an intermediate bacterial population. The bacteria in the intermediate bacterial population are then optimized using the Q-learning algorithm to obtain a new intermediate bacterial population. This new intermediate bacterial population is used as the initial bacterial population. The optimization process based on the bacterial foraging algorithm and the Q-learning algorithm is iteratively executed until the termination condition of the Q-learning algorithm is met. The final optimized bacterial population is used as the initial population of the bacterial foraging algorithm. The termination condition of the Q-learning algorithm can be when the number of iterations of the Q-learning algorithm reaches the number of look-ahead steps M set during initialization.

[0086] Based on the above technical solution, each bacterium in the initial bacterial population is optimized according to the bacterial foraging algorithm to obtain an intermediate bacterial population, including: iteratively performing trending operations, copying operations and migration operations on the bacteria in the initial bacterial population until the number of iterations reaches a preset number of migrations to obtain the intermediate bacterial population.

[0087] Among them, directional operations include bacterial movement and bacterial swimming.

[0088] When the bacteria are moved according to the following formula, the direction of movement of the bacteria can be expressed by the following formula:

[0089]

[0090] Among them, θ i (j, k, l) represents the jth approach, kth replication, and lth migration of bacterium i (i.e., the i-th bacterium), and C(i) represents the step length of the specified random direction taken during the flipping process. The above formula represents the step length of bacterium i in the direction randomly generated after rotation, which is the direction of C(i). The element Δ(i) (t=1, 2, ..., m) is a random number distributed in the interval [-1, 1], representing the random direction vector.

[0091] Calculate J(i, j+1, k, l), and let

[0092] J(i,j+1,k,l)=J(i,j,k,l)+J cc (θ i (j+1,k,l),P(j+1,k,l))

[0093] Among them, J(i, j, k, l) represents the consumption of bacteria i in the search and positioning of θi(j, k, l), J cc (θ i (j+1, k, l), P(j+1, k, l)) represents the objective function.

[0094] When performing the swimming operation on bacteria, let m = 0. If m < N, let m = m + l, where N represents the number of times the bacteria has performed the movement operation, and l represents the number of times the current migration operation has been performed.

[0095] If J(i, j+1, k, l) < J last (J last represents the minimum consumption in the search and positioning that has been carried out), then let J last = J(i, j+1, k, l) and

[0096]

[0097] Return to perform the next movement operation of bacterium i and use it to calculate the new J(i, j+1, k, l); otherwise, set m=N and process the next movement operation of bacterium.

[0098] When all bacteria have reached the maximum number of iterations of the trending operation, the bacteria are replicated. The bacteria are sorted by quality, and based on the number of t bacteria in the bacterial population, the last t / 2 of the inferior bacteria in the bacterial population are eliminated, resulting in a bacterial population of only t / 2 bacteria. The bacterial population of only t / 2 bacteria is replicated to obtain a bacterial population of t bacteria.

[0099] When performing migration operations on bacteria in a bacterial population, each bacterium in the bacterial population is assigned a migration probability P. ed are randomly redistributed into the optimization space.

[0100] The above-mentioned trending operation, copying operation and migration operation are iteratively performed on the bacteria in the initial bacterial population. If the number of iterations is less than the preset number of migrations, the above-mentioned trending operation, copying operation and migration operation are iteratively performed again until the number of iterations reaches the preset number of migrations. The final bacterial population after the trending operation, copying operation and migration operation is used as the intermediate bacterial population.

[0101] On the basis of the above technical solution, the intermediate bacterial population is optimized according to the Q learning algorithm to obtain a new intermediate bacterial population, including: determining the Q value of each bacteria in the intermediate bacterial population according to the Q learning algorithm; and determining the new intermediate bacterial population corresponding to the intermediate bacterial population according to the Q value of each bacteria.

[0102] The Q learning algorithm is an algorithm that selects actions by maximizing the cumulative benefits of the agent's discount. It can autonomously learn the agent's optimal action strategy. Assume that the agent's current state is S and the current action is a. The set of actions that the agent can choose in the current state S (a bacterium in the bacterial population) is A = {a1, a2, ..., a n}, then the benefit (Q value) obtained by the agent looking one step forward can be defined as:

[0103]

[0104] r(S, a) = F p (S, a)-F0(S, a)

[0105] Where r(S, a) represents the immediate benefit of the agent after selecting action strategy a in the current state S; a′ represents the action that the agent can choose in the next state S′; represents the maximum reward that the agent can get by choosing a different action in the next state S'; γ1(0≤γ1<1) is a discount factor; wherein, F p (S, a) represents the objective function (fitness function) value corresponding to the parent individual after selecting action a in state S, F0(S, a) represents the objective function (fitness function) value corresponding to the child individual after selecting action a in state S. Wherein, the action of the bacteria can be bacteria movement or bacteria swimming.

[0106] When the intermediate bacteria population is optimized based on the Q learning algorithm, the Q value of each bacterium (current state S) in the intermediate bacteria population is determined according to the above formula, and based on the Q value, the action that makes the Q value highest is selected and executed, and the new state is obtained after executing the action, that is, the new bacteria are obtained. The action that makes the Q value highest is executed for each bacterium, and the new intermediate bacteria population is obtained.

[0107] In summary, the initial population of the bacteria foraging algorithm is determined according to the Q learning algorithm and the cloud scheduling data set, which can be referred to as shown in Figure 2 The above-mentioned step 140 includes:

[0108] Step 141, initialize the parameters of the Q learning algorithm and the basic parameters of the bacteria foraging algorithm.

[0109] Step 142, initialize the bacteria population to obtain the initial bacteria population.

[0110] Step 143, perform the migration operation cycle on the bacteria population, let l = l + 1, l is the control number of the migration operation, which is 0 at initialization.

[0111] Step 144, perform the tendency operation on the bacteria in the bacteria population.

[0112] Step 145, determine whether the bacteria reach the maximum iteration number of the tendency, if yes, proceed to step S146, otherwise return to step S144.

[0113] Step 146, perform the replication operation on the bacteria in the bacteria population.

[0114] Step 147, migration operation. Each bacterium in the bacteria population is randomly distributed to the optimization space with a migration probability P ed If l < N ed (preset migration number), return to step S143, otherwise end the optimization to obtain the intermediate bacteria population.

[0115] Step 148, calculate the Q value of the current state S (each bacterium in the intermediate bacteria population).

[0116] Step 149, updating the state S, that is, updating each bacterium to obtain new bacteria, and after updating all bacteria, obtaining a new intermediate bacterial population.

[0117] Step 1410: Calculate the total benefit of the Q learning algorithm. The total benefit calculation formula is as follows:

[0118] Q(a)=F p (a)-(1-r)f0(a)-r(1-r)F0(a (1) )-…-r m F0(a (m) )

[0119] Where m represents the number of steps the agent looks forward, r represents the benefit after taking action a, and the details can be referred to the above embodiment. p (a) represents the fitness function value, F0(a (m) ) represents the fitness function value looking m steps ahead.

[0120] Step 1411: Select the state S corresponding to the maximum total benefit Q value as the initial population of the bacterial foraging algorithm. That is, for each bacterium, the state with the maximum total benefit Q value is selected as the final optimized bacteria, and these optimal bacteria are used as the initial population of the bacterial foraging algorithm.

[0121] The specific process of each step can be referred to the above embodiment and will not be repeated here.

[0122] After determining the initial bacterial population, the bacteria in the bacterial population are optimized based on the bacterial foraging algorithm, and the bacteria in the bacterial population are optimized based on the Q-learning algorithm. The finally optimized bacterial population is used as the first-generation population of the subsequent bacterial foraging algorithm. The first-generation population determined in this way is also a better bacterial population (multiple scheduling schemes), which can further improve the efficiency of subsequent optimization based on the bacterial foraging algorithm.

[0123] On the basis of the above technical solution, the optimization of the primary population according to the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model includes:

[0124] The improved bacterial foraging algorithm is obtained by replacing the copy operation in the bacterial foraging algorithm with a screening operation based on the maximum deviation similarity criterion; the copy operation splits bacteria whose fitness function values ​​meet the target condition into two daughter bacteria, and the daughter bacteria have the same position and step size as the bacteria whose fitness function values ​​meet the target condition; the screening operation based on the maximum deviation similarity criterion is used to calculate the deviation between any two bacteria, and the bacterial population is screened according to the deviation;

[0125] The primary population is optimized according to the improved bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model.

[0126] The bacterial foraging algorithm was improved by replacing the replication operation with a screening operation based on the maximum deviation similarity criterion. This resulted in an improved bacterial foraging algorithm. The primary population was optimized based on the improved bacterial foraging algorithm. This involved performing a trending operation, a screening operation based on the maximum deviation similarity criterion, and a migration operation on the bacteria in the primary population. Ultimately, the optimal solution for the cloud computing task scheduling optimization model was obtained.

[0127] On the basis of the above technical solution, the process of screening the bacterial population by the screening operation based on the maximum deviation similarity criterion includes:

[0128] Normalize the bacteria in the bacterial population;

[0129] For the bacterial population after the normalization operation, determining the maximum number of similarity points and the maximum number of deviation points between bacteria other than the global optimal bacteria in the bacterial population and the global optimal bacteria;

[0130] The bacterial population after the normalization operation is screened according to the maximum number of similarity points and the maximum number of deviation points.

[0131] Among them, the global optimal bacteria refers to the bacteria with the smallest fitness function value in the bacterial population (scheduling scheme).

[0132] After normalizing the bacteria in the bacterial population, the maximum similarity points and maximum deviation points between other bacteria and the global optimal bacteria are calculated with the global optimal bacteria as the center. ij and the maximum number of deviation points m ij is calculated as follows:

[0133]

[0134]

[0135] Among them, n ij >n0, n0=[α×m], α(0≤α≤1-m -1 ) is a preset constant, called similarity; 1≤m ij ≤m0, m0=[β×m], β(m -1 ≤β≤1-α) is a preset constant, called deviation.

[0136] After obtaining the maximum similarity points and the maximum deviation points between each bacterium and the global optimal bacterium in the above manner, the bacterial population after the normalization operation is screened based on the maximum similarity points and the maximum deviation points.

[0137] Based on the above technical solution, screening the bacterial population after the normalization operation according to the maximum number of similarity points and the maximum number of deviation points may include:

[0138] Determining whether each bacterium meets preset requirements based on the maximum number of similarity points and the maximum number of deviation points, adding bacteria that meet the preset requirements to the first set, and adding bacteria that do not meet the preset requirements to the second set;

[0139] screening out bacteria to be processed in the second set according to the fitness function values ​​of the bacteria in the second set;

[0140] performing chaos processing on the bacteria to be processed in the second set;

[0141] Performing a vertical and horizontal cross-processing on the bacteria in the first set;

[0142] The bacteria in the first set that have undergone the vertical and horizontal cross processing, the bacteria in the second set that have undergone the chaos processing, and the global optimal bacteria constitute a new bacterial population.

[0143] Among them, the preset requirements include that the maximum number of similarity points is greater than or equal to the similarity point threshold, and the maximum number of deviation points is less than or equal to the deviation point threshold.

[0144] For each bacterium, determine whether the maximum number of similarity points and the maximum number of deviation points meet the preset requirements, add bacteria that meet the preset requirements to the first set A, and add bacteria that do not meet the preset requirements to the second set B.

[0145] The bacteria in the second set B are sorted from largest to smallest according to their fitness function values. The first half of the bacteria are not processed, and the second half are used as the bacteria to be processed. Chaotic processing is then performed on the bacteria to be processed. For example, assuming there are t bacteria in the second set B, the bacteria with the largest fitness function values ​​in the first t / 2 are not processed, and the bacteria with the smallest fitness function values ​​in the last t / 2 are subjected to chaotic processing.

[0146] Performing a vertical and horizontal cross processing on the bacteria in the first set A. The vertical and horizontal cross processing includes horizontal cross and vertical cross.

[0147] The formula used for horizontal crossover is as follows:

[0148] M hc (i, d)=r1X(i,d)+(1-r1)X(j,d)+c1(X(i,d)-X(j,d))

[0149] M hc(j,d)=r2X(j,d)+(1-r2)X(i,d)+c2(X(j,d)-X(i,d))

[0150] Where c1, c2 are random numbers on [-1, 1]; r1, r2 are random numbers on [-1, 1]; X(i, d), X(j, d) are the d-th dimension of the parent bacteria X(i), X(j) respectively; M hc (i, d), M hc (j, d) are the d-th dimension offspring generated by horizontal crossover of X(i, d) and X(j, d).

[0151] The formula used for vertical crossover is as follows:

[0152] M vc (i, d1)=rX(i, d1)+(1-r)X(i, d2)

[0153] Where r is a random number on [0, 1]; Mvc(i, d1) is the progeny bacteria generated by vertical crossover of the d1 and d2 dimensions of bacterium i.

[0154] The bacteria in the first set that have been processed with vertical and horizontal crossover, the bacteria in the second set that have been processed with chaos, and the global optimal bacteria constitute a new bacterial population.

[0155] In summary, the process of optimizing the primary population according to the bacterial foraging algorithm can be referred to Figure 3 The execution shown, that is, the above-mentioned step 150 includes:

[0156] Step 151, performing a migration operation cycle on the bacterial population, setting l=l+1, l is the control number of migration operations, and is initialized to 0.

[0157] Step 152 , performing a screening operation on the bacteria based on the maximum deviation similarity criterion.

[0158] Step 153: Perform a trending operation on the bacteria in the bacterial population.

[0159] Step 154, determine whether the bacteria has reached the maximum number of iterations of the trend, if so, proceed to step S155, otherwise return to step S153.

[0160] Step 155 , performing a screening operation on the bacteria based on the maximum deviation similarity criterion.

[0161] Step 156: determine whether the number of similar operations with the current maximum deviation is less than the number of similar operations with the maximum deviation in the initialization parameters, that is, determine whether k <N c , k represents the number of similar operations with the current maximum deviation, N c Represents the number of similar operations with the maximum deviation, if k <Nc , return to step 153, otherwise execute step 157.

[0162] Step 157, migration operation, after several generations of maximum deviation similarity operation, each bacterium migrates with a probability P de are randomly redistributed into the optimization space. <N de (preset number of migrations), then return to step S151, otherwise end the optimization search and obtain the optimal solution.

[0163] The specific process of each step can be referred to the above embodiment and will not be repeated here.

[0164] The cloud computing task scheduling method provided in the embodiment of the present application can solve the dilemma of bacteria easily falling into local optimality during the optimization process by improving the bacterial foraging algorithm through the maximum deviation similarity criterion, and help the algorithm to find the optimal solution to the greatest extent. Then, cloud computing tasks can be scheduled according to the optimal solution in the future, which can improve resource utilization, effectively avoid peak congestion, reduce idle waste of cloud resources, improve computing efficiency, shorten task execution time, and enhance user experience.

[0165] Figure 4 This is a schematic diagram of the structure of a cloud computing task scheduling device provided by an embodiment of the present application. Figure 4 As shown, the device includes:

[0166] A data acquisition module 410 is configured to acquire a cloud scheduling dataset, wherein the cloud scheduling dataset includes a cloud computing task dataset and a virtual resource dataset;

[0167] A time model building module 420 is used to build a cloud computing task execution time model based on the cloud scheduling data set, wherein the cloud computing task execution time model is used to indicate the expected time for virtual resources in the scheduling scheme to process the cloud computing task;

[0168] A scheduling model building module 430 is used to build a cloud computing task scheduling optimization model based on the cloud computing task execution time model, and the cloud computing task scheduling optimization model serves as a fitness function of the bacterial foraging algorithm;

[0169] An initial population determination module 440 is configured to determine an initial population of the bacterial foraging algorithm based on a Q-learning algorithm and the cloud scheduling dataset, wherein the initial population represents an initial solution of the cloud computing task scheduling optimization model.

[0170] an optimal solution determination module 450 for optimizing the primary population according to the bacterial foraging algorithm to obtain an optimal solution of the cloud computing task scheduling optimization model, wherein the optimal solution of the cloud computing task scheduling optimization model indicates an optimal scheduling solution;

[0171] The scheduling module 460 is configured to schedule the cloud computing tasks in the cloud computing task dataset according to the optimal solution of the cloud computing task scheduling optimization model.

[0172] Optionally, the initial population determining module comprises:

[0173] The population initialization unit is configured to determine an initial bacterial population according to the cloud scheduling dataset, each bacterium in the initial bacterial population representing an initial scheduling scheme.

[0174] The first optimization unit is configured to optimize each bacterium in the initial bacterial population according to the bacterial foraging algorithm to obtain an intermediate bacterial population.

[0175] The second optimization unit is configured to optimize the bacteria in the intermediate bacterial population according to the Q-learning algorithm to obtain a new intermediate bacterial population.

[0176] The iteration control unit is configured to iteratively perform the processes of optimizing the new intermediate bacterial population according to the bacterial foraging algorithm and optimizing according to the Q-learning algorithm until a termination condition of the Q-learning algorithm is met, and to take the finally optimized bacterial population as the initial population.

[0177] Optionally, the first optimization unit is specifically configured to:

[0178] perform the attraction operation, the replication operation and the migration operation on the bacteria in the initial bacterial population iteratively until a preset migration number of times is reached to obtain the intermediate bacterial population.

[0179] Optionally, the second optimization unit is specifically configured to:

[0180] determine the Q values of the bacteria in the intermediate bacterial population according to the Q-learning algorithm.

[0181] determine the new intermediate bacterial population corresponding to the intermediate bacterial population according to the Q values of the bacteria.

[0182] Optionally, the optimal solution determining module comprises:

[0183] The algorithm improvement unit is configured to replace a replication operation in the bacterial foraging algorithm with a screening operation based on a maximum deviation similarity criterion to obtain an improved bacterial foraging algorithm, the replication operation splitting a bacterium whose fitness function value meets a target condition into two sub-bacteria, the sub-bacteria having the same position and step length as the bacterium whose fitness function value meets the target condition, and the screening operation based on the maximum deviation similarity criterion being configured to calculate a deviation degree of any two bacteria and to screen the bacterial population according to the deviation degree.

[0184] The optimal solution determination unit is used to optimize the primary population according to the improved bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model.

[0185] Optionally, the process of screening the bacterial population based on the maximum deviation similarity criterion includes:

[0186] Normalize the bacteria in the bacterial population;

[0187] For the bacterial population after the normalization operation, determining the maximum number of similarity points and the maximum number of deviation points between bacteria other than the global optimal bacteria in the bacterial population and the global optimal bacteria;

[0188] The bacterial population after the normalization operation is screened according to the maximum number of similarity points and the maximum number of deviation points.

[0189] Optionally, screening the bacterial population after the normalization operation according to the maximum number of similarity points and the maximum number of deviation points includes:

[0190] Determining whether each bacterium meets preset requirements based on the maximum number of similarity points and the maximum number of deviation points, adding bacteria that meet the preset requirements to the first set, and adding bacteria that do not meet the preset requirements to the second set;

[0191] screening out bacteria to be processed in the second set according to the fitness function values ​​of the bacteria in the second set;

[0192] performing chaos processing on the bacteria to be processed in the second set;

[0193] Performing a vertical and horizontal cross-processing on the bacteria in the first set;

[0194] The bacteria in the first set that have undergone the vertical and horizontal cross processing, the bacteria in the second set that have undergone the chaos processing, and the global optimal bacteria constitute a new bacterial population.

[0195] Optionally, the time model building module includes:

[0196] an execution time determining unit, configured to determine, for each virtual resource, an execution time for the virtual resource to process a target cloud computing task, the target cloud computing task being a cloud computing task assigned to the virtual resource;

[0197] The expected time determining unit is configured to use the minimum execution time among the execution times corresponding to each virtual resource in the virtual resource data set as the expected time.

[0198] Optionally, the execution time determination unit is specifically configured to:

[0199] An execution time for the virtual resource to process the target cloud computing task is determined according to the number of instructions to be executed of the target cloud computing task and the performance indicator value of the virtual resource.

[0200] Optionally, the scheduling model construction module is specifically used to:

[0201] averaging the execution time corresponding to each virtual resource in the virtual resource data set to obtain an execution time mean;

[0202] Determine an execution time standard deviation according to the execution time corresponding to each virtual resource in the virtual resource data set and the execution time mean;

[0203] A cloud computing task scheduling optimization model is constructed according to the expected time and the execution time standard deviation.

[0204] The cloud computing task scheduling device provided in the embodiment of the present application is used to implement the various steps of the cloud computing task scheduling method described in the embodiment of the present application. The specific implementation methods of each module of the device can be found in the corresponding steps and will not be repeated here.

[0205] The cloud computing task scheduling device provided in the embodiment of the present application constructs a cloud computing task execution time model and a cloud computing task scheduling optimization model. The cloud computing task scheduling optimization model serves as the fitness function of the bacterial foraging algorithm. The primary population of the bacterial foraging algorithm is determined according to the Q learning algorithm and the cloud scheduling data set. The primary population represents the initial solution of the cloud computing task scheduling optimization model. The primary population is optimized according to the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model. The optimal solution indicates the optimal scheduling scheme, and then the cloud computing tasks in the cloud computing task data set can be scheduled according to the optimal scheduling scheme. By determining the primary population of the bacterial foraging algorithm through the Q learning algorithm and the cloud scheduling data set, a better initial solution can be obtained. The initial solution can then be further optimized based on the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model. Scheduling cloud computing tasks according to the optimal solution can improve resource utilization, improve computing efficiency, shorten the execution time of cloud computing tasks, and enhance user experience.

[0206] Figure 5 is a structural diagram of an electronic device provided in an embodiment of the present application, such as Figure 5 As shown, the electronic device 500 may include one or more processors 510 and one or more memories 520 connected to the processors 510. The electronic device 500 may also include an input interface 530 and an output interface 540 for communicating with another device or system. The program code executed by the processor 510 may be stored in the memory 520.

[0207] The processor 510 in the electronic device 500 calls the program code stored in the memory 520 to execute the cloud computing task scheduling method in the above embodiment.

[0208] An embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the cloud computing task scheduling method as described in the embodiment of the present application.

[0209] The embodiment of the present application also provides a computer program product, which, when executed by a processor, implements the steps of the cloud computing task scheduling method as described in the embodiment of the present application.

[0210] The above is a detailed introduction to a cloud computing task scheduling method, device, electronic device and storage medium provided in the embodiments of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for general technical personnel in this field, based on the ideas of the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

[0211] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware. Based on this understanding, the essence of the above technical solution or the part that contributes to the existing technology can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or certain parts of the embodiments.

Claims

1. A cloud computing task scheduling method, characterized in that: include: Acquire a cloud scheduling dataset, where the cloud scheduling dataset includes a cloud computing task dataset and a virtual resource dataset; constructing a cloud computing task execution time model based on the cloud scheduling data set, wherein the cloud computing task execution time model is used to indicate the expected time for virtual resources in the scheduling scheme to process the cloud computing task; According to the cloud computing task execution time model, a cloud computing task scheduling optimization model is constructed, and the cloud computing task scheduling optimization model is used as the fitness function of the bacterial foraging algorithm; Determining an initial population of the bacterial foraging algorithm based on a Q-learning algorithm and the cloud scheduling dataset, wherein the initial population represents an initial solution of the cloud computing task scheduling optimization model; Optimizing the primary population according to the bacterial foraging algorithm to obtain an optimal solution of the cloud computing task scheduling optimization model, wherein the optimal solution of the cloud computing task scheduling optimization model indicates an optimal scheduling solution; The cloud computing tasks in the cloud computing task dataset are scheduled according to the optimal solution of the cloud computing task scheduling optimization model.

2. The method according to claim 1, characterized in that Determining the initial population of the bacterial foraging algorithm based on the Q learning algorithm and the cloud scheduling data set includes: determining an initial bacterial population according to the cloud scheduling dataset, wherein each bacterium in the initial bacterial population represents an initial scheduling scheme; optimizing each bacterium in the initial bacterial population according to a bacterial foraging algorithm to obtain an intermediate bacterial population; According to the Q-learning algorithm, the bacteria in the intermediate bacterial population are optimized to obtain a new intermediate bacterial population; The process of optimizing the new intermediate bacterial population according to the bacterial foraging algorithm and optimizing according to the Q-learning algorithm is iteratively performed until the termination condition of the Q-learning algorithm is met, and the finally optimized bacterial population is used as the initial population.

3. The method according to claim 2, characterized in that The step of optimizing each bacterium in the initial bacterial population according to the bacterial foraging algorithm to obtain an intermediate bacterial population includes: The bacteria in the initial bacterial population are iteratively subjected to trending operations, replication operations, and migration operations until the number of iterations reaches a preset number of migrations, thereby obtaining the intermediate bacterial population.

4. The method according to claim 2, characterized in that The bacteria in the intermediate bacterial population are optimized according to the Q learning algorithm to obtain a new intermediate bacterial population, including: Determining the Q value of each bacterium in the intermediate bacterial population according to a Q-learning algorithm; According to the Q value of each bacteria, a new intermediate bacterial population corresponding to the intermediate bacterial population is determined.

5. The method according to any one of claims 1 to 4, characterized in that Optimizing the primary population according to the bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model includes: The improved bacterial foraging algorithm is obtained by replacing the copy operation in the bacterial foraging algorithm with a screening operation based on the maximum deviation similarity criterion; the copy operation splits bacteria whose fitness function values ​​meet the target condition into two daughter bacteria, and the daughter bacteria have the same position and step size as the bacteria whose fitness function values ​​meet the target condition; the screening operation based on the maximum deviation similarity criterion is used to calculate the deviation between any two bacteria, and the bacterial population is screened according to the deviation; The primary population is optimized according to the improved bacterial foraging algorithm to obtain the optimal solution of the cloud computing task scheduling optimization model.

6. The method according to claim 5, characterized in that The process of screening the bacterial population includes: Normalize the bacteria in the bacterial population; For the bacterial population after the normalization operation, determining the maximum number of similarity points and the maximum number of deviation points between bacteria other than the global optimal bacteria in the bacterial population and the global optimal bacteria; The bacterial population after the normalization operation is screened according to the maximum number of similarity points and the maximum number of deviation points.

7. The method according to claim 6, characterized in that The screening of the bacterial population after the normalization operation according to the maximum number of similarity points and the maximum number of deviation points includes: Determining whether each bacterium meets the preset requirements based on the maximum number of similarity points and the maximum number of deviation points, adding bacteria that meet the preset requirements to the first set, and adding bacteria that do not meet the preset requirements to the second set; screening out bacteria to be processed in the second set according to the fitness function values ​​of the bacteria in the second set; performing chaos processing on the bacteria to be processed in the second set; Performing a cross-sectional processing on the bacteria in the first set; The bacteria in the first set that have undergone the vertical and horizontal cross processing, the bacteria in the second set that have undergone the chaos processing, and the global optimal bacteria constitute a new bacterial population.

8. The method according to any one of claims 1 to 4, characterized in that The step of constructing a cloud computing task execution time model based on the cloud scheduling dataset includes: For each virtual resource, determining an execution time for the virtual resource to process a target cloud computing task, where the target cloud computing task is a cloud computing task assigned to the virtual resource; The minimum execution time among the execution times corresponding to each virtual resource in the virtual resource data set is used as the expected time.

9. The method according to claim 8, characterized in that Determining the execution time of the virtual resource processing the target cloud computing task includes: An execution time for the virtual resource to process the target cloud computing task is determined according to the number of instructions to be executed of the target cloud computing task and the performance indicator value of the virtual resource.

10. The method according to claim 8, characterized in that The step of constructing a cloud computing task scheduling optimization model based on the cloud computing task execution time model includes: averaging the execution time corresponding to each virtual resource in the virtual resource data set to obtain an execution time mean; Determine an execution time standard deviation according to the execution time corresponding to each virtual resource in the virtual resource data set and the execution time mean; A cloud computing task scheduling optimization model is constructed according to the expected time and the execution time standard deviation.

11. A cloud computing task scheduling device, characterized in that: include: A data acquisition module is used to acquire a cloud scheduling dataset, wherein the cloud scheduling dataset includes a cloud computing task dataset and a virtual resource dataset; a time model building module, configured to build a cloud computing task execution time model based on the cloud scheduling data set, wherein the cloud computing task execution time model is used to indicate the expected time for virtual resources in the scheduling scheme to process the cloud computing task; A scheduling module construction module is used to construct a cloud computing task scheduling optimization model according to the cloud computing task execution time model, and the cloud computing task scheduling optimization model serves as a fitness function of the bacterial foraging algorithm; An initial population determination module is used to determine the initial population of the bacterial foraging algorithm based on the Q learning algorithm and the cloud scheduling dataset, wherein the initial population represents the initial solution of the cloud computing task scheduling optimization model; an optimal solution determination module, configured to optimize the primary population according to the bacterial foraging algorithm to obtain an optimal solution of the cloud computing task scheduling optimization model, wherein the optimal solution of the cloud computing task scheduling optimization model indicates an optimal scheduling solution; A scheduling module is used to schedule the cloud computing tasks in the cloud computing task data set according to the optimal solution of the cloud computing task scheduling optimization model.

12. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the cloud computing task scheduling method according to any one of claims 1 to 10 is implemented.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the cloud computing task scheduling method according to any one of claims 1 to 10 are implemented.

Citation Information

Patent Citations

  • Cloud computing resource scheduling system and method

    CN104516785A

  • Artificial intelligence-based task scheduling method and device, equipment and storage medium

    CN115794341A