Hybrid cloud task scheduling method based on improved simulated annealing algorithm
By improving the simulated annealing algorithm and combining the random forest algorithm, the problems of inaccurate resource scheduling and low computing efficiency in hybrid cloud scenarios are solved, and load balancing of virtual machine resources and maximizing resource utilization is achieved.
Patent Information
- Application Number
- PCT/CN2024/136093
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-13
- Filing Date
- 2024-12-02
- Publication Date
- 2025-06-19
AI Technical Summary
The prior art cannot effectively distinguish between public cloud and private cloud resource pool in hybrid cloud scenarios, resulting in inaccurate resource scheduling structure, complex computing methods, high time complexity, and low computing efficiency.
Using an improved simulated annealing algorithm, the virtual machines and tasks of the public and private cloud resource pools in hybrid clouds are separately divided, and the expected execution time of the virtual machine task is calculated, the objective function is constructed, and the random forest algorithm is introduced to calculate the weight coefficient of the resource pool, and the acceptance probability formula is improved to achieve resource load balancing.
It realizes the rational configuration of virtual machine resources in a hybrid cloud environment, maximizes resource utilization, reduces the complexity of parameter settings, and improves computing efficiency.
Smart Images

Figure CN2024136093_19062025_PF_FP_ABST
Abstract
Description
A hybrid cloud task scheduling method based on improved simulated annealing algorithm
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to the Chinese patent application filed with the China Patent Office on December 13, 2023, with application number 202311712736.7 and invention name “A hybrid cloud task scheduling method based on improved simulated annealing algorithm”, the entire contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of cloud computing technology, and in particular to a hybrid cloud task scheduling method based on an improved simulated annealing algorithm. Background Art
[0004] In the era of big data, artificial intelligence, and the Internet of Things, cloud computing has become an indispensable technology for businesses, governments, and individuals, and has gradually evolved into a science. Traditional cloud computing is categorized into public and private clouds. Public clouds offer significant advantages in elastic scaling, resource expansion, and resource utilization, while private clouds are known for their security, stability, and reliability. Hybrid clouds, combining the strengths of both, have become the mainstream deployment method for enterprise-level platforms and applications. Designing a method to call cloud tasks and achieve load balancing across virtual machine resource pools in both public and private clouds is a critical issue.
[0005] This method proposes a cloud task scheduling and load balancing method based on an improved simulated annealing algorithm in a hybrid cloud scenario. This method can reasonably allocate the resources of each virtual machine in the hybrid cloud resource pool, maximize the resource utilization of CPU, GPU and memory, and improve the resource utilization of virtual machines.
[0006] Patent document CN109542619A proposes a cloud computing load balancing and task scheduling method that combines an ant colony algorithm, a roulette algorithm, and a simulated annealing algorithm. The patent uses a greedy algorithm to allocate ant colonies to various virtual machines and calculate the degree of matching between virtual machine resources and tasks in the cloud platform. The roulette algorithm is then used to select the next virtual machine based on the calculated probability statistics, thereby further calculating the local optimal solution. Finally, the traditional simulated annealing algorithm is used for iteration, and the optimal solution is gradually updated until the final overall optimal solution. Patent document CN112954012B proposes a task scheduling method based on an improved simulated annealing algorithm, which improves the acceptance probability of the simulated annealing algorithm and obtains the optimal solution of the task scheduling function by continuously cooling the improved simulated annealing algorithm. The main problems of this type of method are:
[0007] (1) All virtual machines are processed uniformly without distinguishing between private cloud and public cloud resource pools in hybrid cloud scenarios, nor is the weight of resource pool tasks processed, resulting in an inaccurate resource scheduling structure.
[0008] (2) The computational means of this type of method involves multiple resource information of the virtual machine and contains many parameters that need to be manually adjusted. It has high time complexity and low computational efficiency. Summary of the Invention
[0009] In view of the shortcomings of the existing technology, the purpose of this application is to provide a hybrid cloud task scheduling method based on an improved simulated annealing algorithm, so as to achieve a reasonable allocation of the overall resources of virtual machines in the public cloud and private cloud resource pools in the hybrid cloud and maximize their utilization.
[0010] To achieve the above objectives, the present application is implemented through the following technical solution: a hybrid cloud task scheduling method based on an improved simulated annealing algorithm, comprising the following steps:
[0011] Step 1: Separately divide and record the virtual machines and tasks running in the public cloud and private cloud resource pools in the hybrid cloud;
[0012] Step 2: Follow up the CPU, GPU, content, and network information of the virtual machine respectively to calculate the expected execution time of the task in a single virtual machine;
[0013] Step 3: Construct the main objective function of the simulated annealing algorithm based on the total expected execution time of the virtual machine tasks;
[0014] Step 4: Calculate the average resource load of the hybrid cloud resource pool and use the random forest algorithm to derive the weight coefficients of the public cloud and private cloud.
[0015] Step 5: Based on the average load of virtual machines in the hybrid cloud scenario calculated by random forest, the acceptance probability formula of the traditional simulated annealing algorithm is improved to achieve load balancing of virtual machine resources in the resource pool;
[0016] Step 6: Set the initial temperature, run the improved simulated annealing algorithm, and iterate continuously to find the best solution for load balancing and task scheduling.
[0017] Furthermore, the step 1 further includes: a public cloud virtual machine list, a public cloud task list, a private cloud virtual machine list and a private cloud task list, wherein the public cloud virtual machine list is V=[V1, V2, V3..., V m ], the public cloud task list is T = [T1, T2, T3..., T n ];
[0018] Where m is the number of public cloud virtual machines, and n is the number of public cloud tasks;
[0019] The private cloud virtual machine list is V′=[V′1, V′2, V′3..., V′ m′ ], the private cloud task list is T′=[T′1,T′2,T′3...,T′ n′ ];
[0020] Where m′ is the number of private cloud virtual machines, and n′ is the number of private cloud tasks.
[0021] Optionally, step 2 includes: setting the expected total execution time of tasks in a single virtual machine for the public cloud and private cloud respectively. The running time of the task is mainly determined by the hardware level of the CPU, GPU and memory in the virtual machine and the overall complexity of the task, while the transmission of the task is mainly determined by the network quality of the resource pool and the size of the task package.
[0022] Optionally, step 2 further includes: a task complexity formula and a virtual machine hardware level formula, wherein the task complexity formula is: com i =O i *M i ;
[0023] Among them, Oi represents the time complexity of the algorithm in the task, and Mi represents the space occupied by the task package;
[0024] The virtual machine hardware level formula is: P = a*core*CPU+b*ram+c*core′*GPU;
[0025] Among them, CPU and GPU represent the computing power of the single-core CPU and GPU in the virtual machine, core and core′ represent the number of CPU and GPU cores respectively, ram represents the memory size, and a, b, and c represent the scaling coefficients.
[0026] Optionally, in step 2, a formula for the expected execution time of a task in a public cloud virtual machine, a formula for the expected execution time of a task in a private cloud virtual machine, a formula for the expected total execution time of a task in a single public cloud virtual machine, and a formula for the expected total execution time of a task in a single private cloud virtual machine are further set. The formula for the expected execution time of a task in a public cloud virtual machine is:
[0027] Among them, TT represents the total expected execution time of the task in the public cloud virtual machine, net i Represents the bandwidth of the public virtual machine Vi;
[0028] The formula for the expected execution time of tasks in the private cloud virtual machine is:
[0029] Where TT′ represents the total expected execution time of the task in the private cloud virtual machine, net i ′ represents the bandwidth of the private virtual machine Vi.
[0030] Optionally, the formula for the expected total execution time of a task in a single public cloud virtual machine is:
[0031] Where n is the total number of tasks in the public cloud virtual machine;
[0032] The formula for the total expected execution time of a task in a single private cloud virtual machine is:
[0033] Where n′ is the total number of tasks in the private cloud virtual machine.
[0034] Optionally, step 3 further includes: setting an objective function, whereby the expected execution time of a task of a single virtual machine in the private cloud resource pool and the public cloud resource pool has been obtained in step 2, and the total execution time of the private cloud resource pool and the public cloud resource pool can be calculated respectively;
[0035] The total execution time formula of the task in the public cloud resource pool is:
[0036] Where m is the number of virtual machines in the public cloud resource pool;
[0037] The total execution time formula of tasks in the private cloud resource pool is:
[0038] Where m′ is the number of virtual machines in the private cloud resource pool;
[0039] When tasks in the private cloud resource pool and tasks in the public cloud resource pool are run in parallel, the total execution time is the maximum of the execution times of the tasks in the public cloud and private cloud resource pools. The total execution time is: Sum(TT) = max(P, P′);
[0040] In some special cases where the running time requirement is not high or when the idle time of the virtual machine needs to be used for other additional tasks, the number of tasks in the public cloud and private cloud resource pools is calculated serially, and the total time is the sum of the two;
[0041] The total execution time is: Sum(TT) = P + P′;
[0042] The goal of task scheduling is to ensure that the total execution time of the task is as small as possible, so the objective function is set as:
[0043] Optionally, step 4 further includes: calculating the average resource load of the virtual machines in the hybrid cloud resource pool, where the load of the resource pool is mainly composed of the CPU load, GPU load, and memory load of each virtual machine.
[0044] The load of a virtual machine in the public cloud can be set as: L = m1CPU + m2RAM + m3GPU;
[0045] Among them, CPU, RAM and GPU respectively represent the resource proportions of CPU, RAM and GPU when the virtual machine performs a certain task, and m1, m2 and m3 are the proportion coefficients respectively;
[0046] The load of a virtual machine in the private cloud can be set as: L′=m1CPU′+m2RAM′+m3GPU′;
[0047] The average load of all resource pools in the hybrid cloud environment performing a certain task is:
[0048] Among them, w1 and w2 are weight coefficients.
[0049] The step 5 further includes: improving the acceptance probability in the simulated annealing algorithm;
[0050] The difference in average load capacity between a single virtual machine in a public cloud resource pool and a hybrid cloud resource pool is: diffL = |LL avg |;
[0051] The difference in average load capacity between a single virtual machine in a private cloud resource pool and a hybrid cloud resource pool is: diffL′ = |L′ - L avg |;
[0052] The average gap is:
[0053] It can be inferred that the smaller the value of Ldiff_avg, the more evenly resources are distributed in the hybrid cloud resource pool, and the greater the probability of achieving load balancing. Therefore, the original acceptance probability formula is changed to:
[0054] This is done to achieve load balancing of virtual machine resources in the resource pool.
[0055] Optionally, step 6 further includes: setting an initial temperature T of the improved simulated annealing algorithm, using the objective function F set in step 3 to generate an initial solution F1, and then randomly interfering with the current objective function within the algorithm to generate a new function value F2;
[0056] Then, the new function value is calculated based on the formula P in step 5. If it is accepted, F2 is used as the new solution. Further iterations are carried out to reduce the temperature until the objective function F value is minimized. That is, the expected time for all virtual machines in the hybrid cloud resource pool to execute tasks is minimized. A random forest model is added midway through the simulated annealing algorithm.
[0057] Repeated iterative training is performed to determine the weight ratio coefficients of w1 and w2 in step 4, and finally the allocation of virtual machine resources in the resource pool in the hybrid cloud environment is completed.
[0058] Beneficial effects of this application:
[0059] This solution improves the acceptance probability formula of the simulated annealing algorithm. The improved simulated annealing algorithm can perform task scheduling and resource load balancing in the resource pool in a hybrid cloud environment, solving the problem that the traditional simulated annealing algorithm can only be applied in a single scenario when dealing with task scheduling problems.
[0060] This solution introduces a random forest model into the simulated annealing algorithm, solving the problem that the weight ratios of public and private clouds need to be manually set. In the entire solution, only the temperature needs to be set manually, which greatly reduces the problems of many parameters and low efficiency in traditional methods. BRIEF DESCRIPTION OF THE DRAWINGS
[0061] Other features, objects and advantages of the present application will become more apparent upon reading the detailed description of non-limiting embodiments with reference to the following drawings:
[0062] FIG1 is a specific implementation process provided by this application;
[0063] FIG2 is a flowchart of an improved simulated annealing algorithm provided in this application. DETAILED DESCRIPTION
[0064] In order to make the technical means, creative features, objectives and effects achieved by this application easy to understand, this application is further explained below in conjunction with specific implementation methods.
[0065] Referring to Figures 1 and 2, a hybrid cloud task scheduling method based on an improved simulated annealing algorithm includes the following steps:
[0066] Step 1: Separately divide and record the virtual machines and tasks running in the public cloud and private cloud resource pools in the hybrid cloud;
[0067] Step 2: Follow up the CPU, GPU, content, and network information of the virtual machine respectively to calculate the expected execution time of the task in a single virtual machine;
[0068] Step 3: Construct the main objective function of the simulated annealing algorithm based on the total expected execution time of the virtual machine tasks;
[0069] Step 4: Calculate the average resource load of the hybrid cloud resource pool and use the random forest algorithm to derive the weight coefficients of the public cloud and private cloud.
[0070] Step 5: Based on the average load of virtual machines in the hybrid cloud scenario calculated by random forest, the acceptance probability formula of the traditional simulated annealing algorithm is improved to achieve load balancing of virtual machine resources in the resource pool;
[0071] Step 6: Set the initial temperature, run the improved simulated annealing algorithm, and iterate continuously to find the best solution for load balancing and task scheduling.
[0072] Step 1 also includes: a public cloud virtual machine list, a public cloud task list, a private cloud virtual machine list, and a private cloud task list. The public cloud virtual machine list is V = [V1, V2, V3..., V m ], the public cloud task list is T=[T1,T2,T3...,T n ];
[0073] Where m is the number of public cloud virtual machines, and n is the number of public cloud tasks;
[0074] The private cloud virtual machine list is V′=[V′1,V′2,V′3...,V′ m′ ], the private cloud task list is T′=[T′1,T′2,T′3...,T′ n′ ];
[0075] Where m′ is the number of private cloud virtual machines, and n′ is the number of private cloud tasks.
[0076] Step 2 includes: setting the expected total execution time of the task in a single virtual machine for the public cloud and private cloud respectively. The running time of the task is mainly determined by the hardware level of the CPU, GPU and memory in the virtual machine and the overall complexity of the task, while the transmission of the task is mainly determined by the network quality of the resource pool and the size of the task package.
[0077] Step 2 also includes: the overall complexity formula of the task and the virtual machine hardware level formula. The overall complexity formula of the task is: i =O i *M i ;
[0078] Among them, Oi represents the time complexity of the algorithm in the task, and Mi represents the space occupied by the task package;
[0079] The formula for virtual machine hardware level is: P = a*core*CPU+b*ram+c*core′*GPU;
[0080] Among them, CPU and GPU represent the computing power of the single-core CPU and GPU in the virtual machine, core and core′ represent the number of CPU and GPU cores respectively, ram represents the memory size, and a, b, and c represent the scaling coefficients.
[0081] In step 2, the expected execution time formula for tasks in public cloud virtual machines, the expected execution time formula for tasks in private cloud virtual machines, the expected total execution time formula for tasks in a single public cloud virtual machine, and the expected total execution time formula for tasks in a single private cloud virtual machine are also set. The expected execution time formula for tasks in public cloud virtual machines is:
[0082] Among them, TT represents the total expected execution time of the task in the public cloud virtual machine, net i Represents the bandwidth of the public virtual machine Vi;
[0083] The formula for the expected execution time of a task in a private cloud virtual machine is:
[0084] Where TT′ represents the total expected execution time of the task in the private cloud virtual machine, net′ i Indicates the bandwidth of the private virtual machine Vi.
[0085] The formula for the expected total execution time of a task in a single public cloud virtual machine is:
[0086] Where n is the total number of tasks in the public cloud virtual machine;
[0087] The formula for the total expected execution time of a task in a single private cloud virtual machine is:
[0088] Where n′ is the total number of tasks in the private cloud virtual machine.
[0089] Step 3 also includes: setting an objective function. In step 2, the expected execution time of a task for a single virtual machine in the private cloud resource pool and the public cloud resource pool has been obtained, and the total execution time of the private cloud resource pool and the public cloud resource pool can be calculated respectively.
[0090] The total execution time formula for tasks in the public cloud resource pool is:
[0091] Where m is the number of virtual machines in the public cloud resource pool;
[0092] The total execution time formula for tasks in a private cloud resource pool is:
[0093] Where m′ is the number of virtual machines in the private cloud resource pool;
[0094] Under normal circumstances, when tasks in the private cloud resource pool and tasks in the public cloud resource pool are run in parallel, the total execution time is the maximum of the execution times of the public cloud and private cloud resource pool tasks. The total execution time is: Sum(TT) = max(P, P′);
[0095] In some special cases where the running time requirement is not high or when the idle time of the virtual machine needs to be used for other additional tasks, the number of tasks in the public cloud and private cloud resource pools is calculated serially, and the total time is the sum of the two;
[0096] The total execution time is: Sum(TT) = P + P′;
[0097] The goal of task scheduling is to ensure that the total execution time of the task is as small as possible, so the objective function is set as:
[0098] Step 4 also includes: calculating the average resource load of the virtual machines in the hybrid cloud resource pool. The load of the resource pool is mainly composed of the CPU load, GPU load, and memory load of each virtual machine;
[0099] The load of a virtual machine in a public cloud can be set as: L = m1CPU + m2RAM + m3GPU;
[0100] Among them, CPU, RAM and GPU respectively represent the resource proportions of CPU, RAM and GPU when the virtual machine performs a certain task, and m1, m2 and m3 are the proportion coefficients respectively;
[0101] The load of a virtual machine in a private cloud can be set as: L′=m1CPU′+m2RAM′+m3GPU′;
[0102] The average load of all resource pools in the hybrid cloud environment performing a certain task is:
[0103] Among them, w1 and w2 are weight coefficients. In this method, the most appropriate w1 and w2 weight coefficients are obtained by continuous iterative training of the random forest model.
[0104] Step 5 also includes: improving the acceptance probability in the simulated annealing algorithm;
[0105] The difference in average load capacity between a single virtual machine in a public cloud resource pool and a hybrid cloud resource pool is: diffL = |LL avg |;
[0106] The difference in average load capacity between a single virtual machine in a private cloud resource pool and a hybrid cloud resource pool is: diffL′ = |L′ - L avg |;
[0107] The average gap is:
[0108] It can be inferred that the smaller the value of Ldiff_avg, the more evenly resources are distributed in the hybrid cloud resource pool, and the greater the probability of achieving load balancing. Therefore, the original acceptance probability formula is changed to:
[0109] This is done to achieve load balancing of virtual machine resources in the resource pool.
[0110] Step 6 also includes: setting the initial temperature T of the improved simulated annealing algorithm, using the objective function F set in step 3 to generate an initial solution F1, and then randomly interfering with the current objective function within the algorithm to generate a new function value F2;
[0111] Then, the new function value is calculated based on the formula P in step 5. If it is accepted, F2 is used as the new solution. Further iterations are carried out to reduce the temperature until the objective function F value is minimized. That is, the expected time for all virtual machines in the hybrid cloud resource pool to execute tasks is minimized. A random forest model is added midway through the simulated annealing algorithm.
[0112] Repeated iterative training is performed to determine the weight ratio coefficients of w1 and w2 in step 4, and finally the allocation of virtual machine resources in the resource pool in the hybrid cloud environment is completed.
[0113] Working principle: The specific steps are as follows:
[0114] Step 1: Separately divide the virtual machines and tasks running in the public cloud and private cloud resource pools in the hybrid cloud. The public cloud virtual machine list is V = [V1, V2, V3..., V m ], the public cloud task list is T=[T1,T2,T3...,T n ], where m is the number of public cloud virtual machines and n is the number of public cloud tasks; the private cloud virtual machine list is V′=[V′1,V′2,V′3...,V′ m′ ], the private cloud task list is T′=[T′1,T′2,T′3...,T′ n′ ], where m′ is the number of private cloud virtual machines and n′ is the number of private cloud tasks.
[0115] Step 2: Set the objective function of the simulated annealing algorithm. According to the task division list of the virtual machine in the hybrid cloud resource pool, the objective function of the simulated annealing algorithm is set at the cost of minimizing the task execution time.
[0116] Step 3: Add additional training data and use the random forest model to train the resource pool of the target environment. Use the trained random forest model to calculate the weight of the average load in the hybrid cloud resource pool to obtain the average load of all servers in the hybrid cloud resource pool for a certain task.
[0117] Step 4: Based on the average load calculated by the random forest model in step 3, calculate an acceptance probability formula:
[0118] Step 5: Set the initial temperature of the simulated annealing algorithm and input the objective function and the improved acceptance probability formula into the simulated annealing algorithm model. Finally, the task allocation matrix of each machine in the hybrid cloud resource pool environment is obtained when the objective function is minimized (the time required for the task is minimized), thereby achieving the goal of task scheduling.
[0119] The above shows and describes the basic principles and main features of the present application and the advantages of the present application. It is obvious to those skilled in the art that the present application is not limited to the details of the above exemplary embodiments, and that the present application can be implemented in other specific forms without departing from the spirit or basic features of the present application. Therefore, no matter from which point of view, the embodiments should be regarded as exemplary and non-restrictive. The scope of the present application is defined by the appended claims rather than the above description, and it is intended that all changes that fall within the meaning and range of equivalents of the claims are included in the present application. Any figure mark in the claims should not be construed as limiting the claim to which it relates.
[0120] In addition, it should be understood that although this specification is described in terms of implementation methods, not every implementation method contains only one independent technical solution. This narrative method of the specification is only for the sake of clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment can also be appropriately combined to form other implementation methods that can be understood by those skilled in the art.
Claims
1. A hybrid cloud task scheduling method based on an improved simulated annealing algorithm, characterized in that: The following steps are involved: Step 1: Separately divide and record the virtual machines and tasks running in the public cloud and private cloud resource pools in the hybrid cloud; Step 2: Follow up the CPU, GPU, content, and network information of the virtual machine respectively, and calculate the expected execution time of the task in a single virtual machine; Step 3, constructing the main objective function of the simulated annealing algorithm based on the expected total task execution time of the virtual machine; Step 4: Calculate the average resource load of the hybrid cloud resource pool, and add the random forest algorithm to obtain the weight coefficients of the public cloud and private cloud respectively; Step 5: According to the average load of virtual machines in the hybrid cloud scenario calculated by random forest, the acceptance probability formula of the traditional simulated annealing algorithm is improved to achieve load balancing of virtual machine resources in the resource pool; Step 6: Set the initial temperature, run the improved simulated annealing algorithm, and continuously iterate to find the best solution for load balancing and task scheduling.
2. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 1 is characterized in that: The step 1 also includes: a public cloud virtual machine list, a public cloud task list, a private cloud virtual machine list and a private cloud task list, wherein the public cloud virtual machine list is V=[V1, V2, V3..., V m ], the public cloud task list is T = [T1, T2, T3..., T n ]; Where m is the number of public cloud virtual machines, and n is the number of public cloud tasks; The private cloud virtual machine list is V′=[V′1, V′2, V′3..., V′ m′ ], the private cloud task list is T′=[T′1,T′2,T′3...,T′ n′ ]; Where m′ is the number of private cloud virtual machines, and n′ is the number of private cloud tasks.
3. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 2 is characterized in that: The step 2 includes: setting the expected total execution time of tasks in a single virtual machine for the public cloud and the private cloud respectively. The running time of the task is mainly determined by the hardware level of the CPU, GPU and memory in the virtual machine and the overall complexity of the task, while the transmission of the task is mainly determined by the network quality of the resource pool and the size of the task package.
4. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 3 is characterized in that: The step 2 also includes: the overall complexity formula of the task and the virtual machine hardware level formula, the overall complexity formula of the task is: i =O i *M i ; Among them, Oi represents the time complexity of the algorithm in the task, and Mi represents the space occupied by the task package; The virtual machine hardware level formula is: P = a*core*CPU+b*ram+c*core′*GPU; Among them, CPU and GPU represent the computing power of the single-core CPU and GPU in the virtual machine, core and core′ represent the number of CPU and GPU cores respectively, ram represents the memory size, and a, b, and c represent the proportional coefficients.
5. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 4 is characterized in that: In step 2, the expected execution time formula of tasks in the public cloud virtual machine, the expected execution time formula of tasks in the private cloud virtual machine, the expected total execution time formula of tasks in a single public cloud virtual machine, and the expected total execution time formula of tasks in a single private cloud virtual machine are also set. The expected execution time formula of tasks in the public cloud virtual machine is: Among them, TT represents the total expected execution time of the task in the public cloud virtual machine, net i represents the bandwidth of the public virtual machine Vi; The formula for the expected execution time of tasks in the private cloud virtual machine is: Where TT′ represents the total expected execution time of the task in the private cloud virtual machine, net i ′ represents the bandwidth of the private virtual machine Vi.
6. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 5 is characterized in that: The formula for the total expected execution time of a task in a single public cloud virtual machine is: Where n is the total number of tasks in the public cloud virtual machine; The formula for the total expected execution time of tasks in a single private cloud virtual machine is: Where n′ is the total number of tasks in the private cloud virtual machine.
7. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 6 is characterized in that: The step 3 also includes: setting an objective function, and obtaining the expected task execution time of a single virtual machine in the private cloud resource pool and the public cloud resource pool in step 2, and then calculating the total execution time of the private cloud resource pool and the public cloud resource pool respectively; The total execution time formula of the tasks in the public cloud resource pool is: Where m is the number of virtual machines in the public cloud resource pool; The total execution time formula of the tasks in the private cloud resource pool is: Where m′ is the number of virtual machines in the private cloud resource pool; When tasks in the private cloud resource pool and tasks in the public cloud resource pool are run in parallel, the total execution time takes the maximum value of the execution time of the public cloud and private cloud resource pool tasks. The total execution time is: Sum(TT)=max(P,P′); In some special cases where the running time requirement is not high or when the idle time of the virtual machine needs to be used for other additional tasks, the number of tasks in the public cloud and private cloud resource pools is calculated serially, and the total time is the sum of the two; The total execution time is: Sum(TT) = P + P′; The goal of task scheduling is to ensure that the total execution time of the task is as small as possible, so the objective function is set as:
8. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 7 is characterized in that: The step 4 also includes: calculating the average resource load of the virtual machines in the hybrid cloud resource pool, where the load of the resource pool is mainly composed of the CPU load, GPU load, and memory load of each virtual machine. The load condition of a virtual machine in the public cloud can be set as follows: L = m1CPU + m2RAM + m3GPU; Among them, CPU, RAM and GPU respectively represent the resource proportions of CPU, RAM and GPU when the virtual machine performs a certain task, and m1, m2 and m3 are the proportion coefficients respectively; The load condition of a virtual machine in the private cloud can be set as follows: L′=m1CPU′+m2RAM′+m3GPU′; The average load of all resource pools in the hybrid cloud environment performing a certain task is: Among them, w1 and w2 are weight coefficients.
9. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 8 is characterized in that: The step 5 also includes: improving the acceptance probability in the simulated annealing algorithm; The difference between the average load capacity of a single virtual machine in the public cloud resource pool and the average load capacity of the hybrid cloud resource pool is: diffL = |LL avg |; The difference between the average load capacity of a single virtual machine in a private cloud resource pool and that of a hybrid cloud resource pool is: diffL′=|L′-L avg |; The average gap is: Change the original acceptance probability formula to: This is done to achieve load balancing of virtual machine resources in the resource pool.
10. The hybrid cloud task scheduling method based on the improved simulated annealing algorithm according to claim 9 is characterized in that: The step 6 also includes: setting the initial temperature T of the improved simulated annealing algorithm, using the objective function F set in step 3 to generate an initial solution F1, and then randomly interfering with the current objective function within the algorithm to generate a new function value F2; Then, according to the formula P in step 5, calculate whether to accept the new function value. If accepted, use F2 as the new solution, and further iterate to reduce the temperature until the objective function F value reaches the minimum, that is, the expected time for all virtual machines in the hybrid cloud resource pool to execute tasks is the shortest, and add a random forest model in the middle of the simulated annealing algorithm; The weight ratio coefficient of w1 and w2 in step 4 is obtained through repeated iterative training, and finally the allocation of virtual machine resources in the resource pool in the hybrid cloud environment is completed.
Citation Information
Patent Citations
Cloud resource scheduling method and device, electronic equipment and computer storage medium
CN115348268A
Hybrid cloud task scheduling method based on improved simulated annealing algorithm
CN117873700A
Method and system for performing intelligent orchestration within a hybrid cloud
US20190306045A1
Cited By
Heterogeneous quantum computing resource scheduling method and device, equipment and medium
CN121900915A