Network cloud resource scheduling method, device, system, equipment, medium and product

By introducing a load balancing factor and pheromone concentration update into the ant colony algorithm, the algorithm is optimized, which solves the problem of low resource scheduling efficiency in the existing technology and improves resource utilization and scheduling speed.

CN118827676BActive Publication Date: 2026-07-10CHINA MOBILE COMM GRP CHONGQING CO LTD +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILE COMM GRP CHONGQING CO LTD
Filing Date
2023-12-05
Publication Date
2026-07-10

AI Technical Summary

Technical Problem

Existing ant colony algorithms rely too heavily on initial parameter settings in network cloud resource scheduling, resulting in low resource scheduling efficiency. Furthermore, they require a significant amount of time to determine the target point and optimal path, making it difficult to effectively coordinate and allocate computing resources, leading to low resource utilization and fragmentation of computing resources.

Method used

By introducing a load balancing factor into the heuristic function, the ant colony algorithm is optimized based on the expected degree of matching between ants in virtual machines and physical hosts. Combined with local updates of the load balancing factor and pheromone concentration, the resource utilization and scheduling reliability of physical hosts are improved.

Benefits of technology

It improves the speed and efficiency of network cloud resource scheduling, reduces the overall cost of task execution, and achieves more efficient resource utilization and scheduling rates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118827676B_ABST
    Figure CN118827676B_ABST
Patent Text Reader

Abstract

The application discloses a network cloud resource scheduling method, device, system, equipment, medium and product, and the method comprises the following steps: step 1, initializing a virtual machine list, a physical host list, an ant quantity and an initial pheromone concentration; step 2, obtaining an initial matching solution set; step 3, calculating an expected degree corresponding to the mth ant; step 4, calculating a selected probability based on the expected degree; step 5, placing the selected virtual machine according to the selected probability; step 6, calculating a load balancing factor according to the resource capacity of each physical host; step 7, calculating a heuristic function according to the load balancing factor; step 8, calculating a state transition probability of the mth ant according to the heuristic function; step 9, updating the next physical host selected to the current physical host according to the state transition probability; step 10, searching is completed, and the initial matching solution set is updated; and step 11, outputting the updated matching solution set, so that efficient scheduling of network cloud resources is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, specifically to a method, apparatus, system, device, medium, and product for scheduling network cloud resources. Background Technology

[0002] Resource task scheduling is a key issue in cloud computing research. The effectiveness of a resource scheduling algorithm is primarily judged by its ability to effectively coordinate and allocate virtual machine resources, that is, to properly allocate virtual machines to their corresponding physical hosts, reducing the total execution time and resource consumption of tasks, and maximizing the performance of the cloud system. The purpose of resource scheduling is mainly to achieve higher resource utilization and better meet user needs by matching tasks and resources.

[0003] Ant colony optimization (ACO) has been widely adopted in cloud resource task scheduling due to its computational stability and good convergence. However, current ACO algorithms rely heavily on initial parameter settings and require significant time for trial and error in determining the target point and optimal path, resulting in low efficiency in resource scheduling. Summary of the Invention

[0004] The purpose of this application is to provide a network cloud resource scheduling method, apparatus, system, device, medium, and product to achieve efficient scheduling of network cloud resources.

[0005] The technical solution of this application is as follows:

[0006] Firstly, a method for scheduling network cloud resources is provided, the method comprising:

[0007] Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host. The list of virtual machines includes M virtual machines, and the list of physical hosts includes P physical hosts. M, N, and P are all positive integers.

[0008] Step 2: Place N ants on each of the physical hosts to obtain the initial matching solution set of the virtual machine and the physical host;

[0009] Step 3: The m-th ant first obtains a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being loaded into the current physical host, where m≤N;

[0010] Step 4: Based on the expected level, calculate the probability that the virtual machine w will be selected by the current physical host;

[0011] Step 5: Select a virtual machine based on the selected probability and place the selected virtual machine w on the current physical host;

[0012] Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor based on the resource capacity of each physical host;

[0013] Step 7: Calculate the heuristic function based on the load balancing factor;

[0014] Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function;

[0015] Step 9: Based on the state transition probability, select the next physical host, update the next physical host to the current physical host, update the initial pheromone concentration, and return to step 3;

[0016] Step 10: Search complete. Map the virtual machines in the virtual machine list that are placed on physical host h to physical host h, update the initial matching solution set, and obtain the updated matching solution set.

[0017] Step 11: Increment the iteration count by 1. If the iteration count is less than N, proceed to Step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set.

[0018] Secondly, a network cloud resource scheduling device is provided, which includes an improved ant colony algorithm module, specifically used for:

[0019] Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host. The list of virtual machines includes M virtual machines, and the list of physical hosts includes P physical hosts. M, N, and P are all positive integers.

[0020] Step 2: Place N ants on each of the physical hosts to obtain the initial matching solution set of the virtual machine and the physical host;

[0021] Step 3: The m-th ant first obtains a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being loaded into the current physical host, where m≤N;

[0022] Step 4: Based on the expected level, calculate the probability that the virtual machine w will be selected by the current physical host;

[0023] Step 5: Select a virtual machine based on the selected probability and place the selected virtual machine w on the current physical host;

[0024] Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor based on the resource capacity of each physical host;

[0025] Step 7: Calculate the heuristic function based on the load balancing factor;

[0026] Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function;

[0027] Step 9: Based on the state transition probability, select the next physical host, update the next physical host to the current physical host, update the initial pheromone concentration, and return to step 3;

[0028] Step 10: Search complete. Map the virtual machines in the virtual machine list that are placed on physical host h to physical host h, update the initial matching solution set, and obtain the updated matching solution set.

[0029] Step 11: Increment the iteration count by 1. If the iteration count is less than N, proceed to Step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set.

[0030] Thirdly, a network cloud resource scheduling system is provided, the system comprising:

[0031] An improved ant colony algorithm module implements the network cloud resource scheduling method described in the first aspect.

[0032] Fourthly, embodiments of this application provide an electronic device, which includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor. When the program or instructions are executed by the processor, they implement the steps of any of the network cloud resource scheduling methods described in the embodiments of this application.

[0033] Fifthly, embodiments of this application provide a readable storage medium on which a program or instructions are stored, and when the program or instructions are executed by a processor, the program or instructions implement the steps of any of the network cloud resource scheduling methods described in embodiments of this application.

[0034] Sixthly, embodiments of this application provide a computer program product, wherein instructions in the computer program product, when executed by a processor of an electronic device, enable the electronic device to perform the steps of any of the network cloud resource scheduling methods described in embodiments of this application.

[0035] The technical solutions provided by the embodiments of this application bring at least the following beneficial effects:

[0036] In this embodiment, step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host; Step 2: Place N ants on each physical host to obtain the initial matching solution set of virtual machines and physical hosts; Step 3: The m-th ant first selects a virtual machine that can be placed on the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being placed on the current physical host; Step 4: Based on the expectation, calculate the selection probability of virtual machine w being selected by the current physical host; Step 5: Select a virtual machine according to the selection probability and place the selected virtual machine w on the current physical host; Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor according to the resource capacity of each physical host; Step 7: Calculate the heuristic function according to the load balancing factor; Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host according to the heuristic function; Step 9: Select the next physical host according to the state transition probability, update the next physical host to the current physical host, update the initial pheromone concentration, and return to step 3; 10. Search complete. Map the virtual machines placed on physical host h from the virtual machine list to physical host h, update the initial matching solution set, and obtain the updated matching solution set. Step 11. Increment the iteration count by 1. If the iteration count is less than N, go to step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set. In the scheme of this application embodiment, by introducing a load balancing factor into the heuristic function that characterizes the expected degree of virtual machine matching with physical host, the load balancing on each physical host can be improved, and the resource utilization of physical host can be improved. In addition, after each ant completes a matching, the pheromone concentration between different physical hosts is locally updated according to the path found by the previous generation of ant colony. This allows subsequent ants to match virtual machines and physical hosts according to the path found by the previous generation of ant colony. This makes the physical host have strong scheduling reliability, can realize task scheduling in different resource environments, reduce the overall cost of task execution, and improve the task scheduling rate, thereby improving the running speed of the entire system in the process of scheduling network cloud resources, making the entire scheduling process more efficient and faster.

[0037] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0038] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application, and do not constitute an undue limitation of this application.

[0039] Figure 1 This is a schematic diagram of the structure of a network cloud resource scheduling system in the prior art;

[0040] Figure 2 This is one of the structural schematic diagrams of a network cloud resource scheduling system provided in the embodiments of this application;

[0041] Figure 3 This is a second schematic diagram of the structure of a network cloud resource scheduling system provided in the embodiments of this application;

[0042] Figure 4 This is a flowchart illustrating a network cloud resource scheduling method provided in an embodiment of this application;

[0043] Figure 5 This is a schematic diagram of the structure of a network cloud resource scheduling device provided in the second aspect embodiment of this application;

[0044] Figure 6 This is a schematic diagram of the structure of an electronic device provided in the third aspect of this application. Detailed Implementation

[0045] To enable those skilled in the art to better understand the technical solutions of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are merely intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0046] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples consistent with some aspects of this application as detailed in the appended claims.

[0047] Before introducing the technical solutions of the embodiments of this application, let's first introduce the technical terms involved in the embodiments of this application:

[0048] Ant colony algorithm: Ant colony algorithm is a classic algorithm in the field of evolutionary computation. It is inspired by the process of ants finding food by passing pheromones. It finds the optimal or suboptimal solution to the optimization problem by constructing paths and updating pheromones.

[0049] Resource scheduling: Resource scheduling is the process of rationally allocating the various tasks in the task flow to the computing resources of the cloud computing platform to run, so as to meet the user's service quality requirements. In the embodiments of this application, this corresponds to how to rationally allocate multiple virtual machine resources to each physical host.

[0050] Pheromones: When ants move, they leave behind a substance called pheromones along their path to transmit information. Ants can sense this substance and use it to guide their movement. The concentration of pheromones is inversely proportional to the length of the path.

[0051] Pheromones importance factor (also known as pheromone concentration): This parameter refers to the degree of influence of pheromones generated during ant movement on ants. It is relatively easy to understand. The larger the parameter, the greater the probability that ants will choose the path they have taken before, which will make the ant colony converge more easily, resulting in reduced randomness in the search and making it difficult to find the global optimum. If it is too small, there is no meaning to the pheromone. This parameter is generally better between [0,5].

[0052] Pheromone evaporation factor: This refers to the level at which pheromones disappear. Its magnitude directly affects the algorithm's global search capability and convergence speed. If this parameter is too large, the pheromones will evaporate too quickly, and some good paths will be excluded. If this parameter is too small, more pheromones will remain on the paths, affecting the algorithm's efficiency. It is generally set to [0.2, 0.5].

[0053] Heuristic function: Represents the expected degree of ant's journey from node i to node j. It is inversely proportional to the distance between nodes; the greater the distance between nodes, the smaller the value of the heuristic function.

[0054] Heuristic importance factor: It reflects the relative importance of heuristic information in guiding the ant colony's pathfinding. Its magnitude reflects the strength of the prior and deterministic factors in the ant colony's optimization process. A larger value also makes it easier to converge too quickly. It is generally set to [0,5].

[0055] Roulette wheel selection: The roulette wheel selection method is that for each point to be selected, the higher the probability of its corresponding probability, the greater the chance of it being selected. In actual roulette wheel selection, the individual's choice is often not based on the individual's choice probability, but on the "cumulative probability".

[0056] The background technology of the embodiments of this application is introduced below:

[0057] The typical mechanism for scheduling network cloud resources is through OpenStack's nova scheduler, which selects the compute node on which to launch the instance. When creating an instance, the user specifies resource requirements, such as the amount of Central Processing Unit (CPU), memory, and disk space needed. OpenStack defines these requirements in the virtual machine specification, and the user only needs to specify which virtual machine specification to use. The virtual machine specification mainly defines resources such as VCPU, Random Access Memory (RAM), disk space, bandwidth, and metadata. The nova scheduler selects the appropriate compute node according to the virtual machine specification. Nova configures the resource scheduling module of the nova scheduler through scheduling drivers, scheduling filters, and weights.

[0058] Nova's resource scheduling process can be referenced. Figure 1 As shown, the specific process is as follows:

[0059] 1) The information center obtains user certificates and authenticates them with the authentication server (e.g., Keystone) through the REST application programming interface (API).

[0060] 2) The authentication server verifies the user's certificate and generates an authentication token, which is then sent back to the information center. This authentication token will be used to send REST requests to other modules.

[0061] 3) The information center sends the request to create a new instance along with the authentication token to nova-api via REST API.

[0062] 4) nova-api will send the authentication token to the authentication server for verification and request some operation permissions.

[0063] 5) The authentication server verifies the authentication token and sends the verification result along with the user's role permission response to nova-api. Nova-api performs quota checks, filter condition adjustments, and other preparatory work.

[0064] 6) The nova-api and nova database exchange are used to settle the instance to be created.

[0065] 7) The nova database creates a database entry for each instance and updates some related table entries.

[0066] 8) nova-api sends an RPC message to the nova scheduler to obtain the database entry updated with a special host identity (identification, ID), which is to obtain the physical host required to deploy the virtual machine.

[0067] 9) The nova scheduler retrieves request messages from the queue.

[0068] 10) The Nova scheduler interacts with the Nova database, finds suitable physical hosts through appropriate filtering and weighting, updates the physical host and virtual machine information in the instance table, and updates the scheduling time to the current time.

[0069] 11) The nova database returns the updated instance entries.

[0070] 12) The Nova scheduler sends an RPC message to the Nova compute service component, requesting the deployment of a virtual machine. When this RPC message is sent, it will specify the physical host selected in step 10, meaning only the relevant physical host can receive this message.

[0071] 13) The nova computing service component retrieves the request message from the message queue.

[0072] 14) The nova compute service component sends an RPC message to the nova database access agent, asking it to help update information such as host and virtual machine specifications in the instance table.

[0073] 15) The Nova database access agent retrieves request messages from the queue.

[0074] 16) The nova database access proxy exchanges data with the nova database.

[0075] 17) The nova database returns updated database information.

[0076] 18) The Nova Database Access Agent returns relevant information to the Nova Compute Service Component.

[0077] As can be seen from the above process, the scheduling process of the Nova scheduler in the prior art mainly consists of two steps:

[0078] 1) Select computation nodes that meet the criteria using filters;

[0079] 2) Select the optimal physical host for virtual machine deployment through weight calculation.

[0080] Nova allows the use of third-party schedulers to configure the scheduling driver, demonstrating the openness of OpenStack. The scheduler can use multiple scheduling filters to filter nodes sequentially, and then select the most suitable node by calculating weights.

[0081] The basic scheduling method of the Nova scheduler described above cannot achieve optimal performance, cannot effectively coordinate and allocate computing resources, resulting in low resource utilization, a large amount of fragmentation of computing resources, and an inability to enable the cloud system to achieve optimal performance.

[0082] Therefore, by optimizing the Nova resource scheduler and adopting an intelligent optimization scheduling algorithm, the scheduling of network cloud resource pools can be achieved.

[0083] Current cloud resource task scheduling methods mainly include ant colony optimization (ACO), genetic algorithm, particle swarm optimization (PSO), and simulated annealing. Ant colony optimization is a heuristic optimization algorithm, a type of intelligent algorithm and evolutionary computation. Compared to genetic and PSO algorithms, ant colony optimization optimizes the pheromone concentration of the topological order (or path), while genetic and PSO algorithms optimize an individual entity (solution vector). Ant colony optimization is inherently suitable for solving pathfinding and assignment problems, and its performance is generally better than PSO algorithms. Compared to simulated annealing, it is computationally more stable, and compared to PSO, it has better convergence.

[0084] As ants move, they leave behind a substance called pheromones along their paths to transmit information. Ants can sense these pheromones and use them to guide their movement. The concentration of pheromones is inversely proportional to the path length. If a path has already been traversed by previous ants and left pheromones, subsequent ants are more likely to choose the path with higher pheromone levels. Note that this is a possibility, not a certainty, but a greater probability. The collective behavior of a large group of ants exhibits a positive feedback loop: the more ants that have traversed a path, the greater the probability that later ants will choose that path. Since pheromone concentration is inversely proportional to path length, the probability of finding the optimal path also increases.

[0085] Ant colony optimization requires a significant amount of time and trial and error to determine the target point and optimal path. Therefore, the convergence speed, global optimum probability, and task scheduling rate of ant colony optimization need to be continuously optimized.

[0086] Because cloud resource pools use a centralized approach for user-side service scheduling, current scheduling methods cannot achieve optimal performance, effectively coordinate and allocate computing resources, resulting in low resource utilization and significant fragmentation of computing resources. There is considerable room for optimization in applying ant colony optimization (ACO) to resource scheduling. However, using ACO for network cloud resource scheduling is inefficient because current ACO algorithms rely heavily on initial parameter settings and require significant time for trial and error in determining target points and optimal paths.

[0087] To address the aforementioned issues, this application provides a network cloud resource scheduling method, apparatus, system, device, medium, and product. The method comprises the following steps: Step 1: Initializing a list of virtual machines to be deployed, a list of physical hosts for deploying each virtual machine, and the number of ants N, and obtaining the initial pheromone concentration of each physical host; Step 2: Placing N ants on each physical host to obtain an initial matching set of virtual machines and physical hosts; Step 3: The m-th ant first selects a virtual machine from the list that can be placed on the current physical host, and calculates the expectation of virtual machine w being placed on the current physical host; Step 4: Based on the expectation, calculating the probability of virtual machine w being selected by the current physical host; Step 5: Selecting a virtual machine according to the selection probability and placing the selected virtual machine w on the current physical host; Step 6: Updating the resource capacity of the current physical host and calculating a load balancing factor based on the resource capacity of each physical host; Step 7: Calculating a heuristic function based on the load balancing factor; Step 8: Calculating the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function; Step 9: Selecting the next physical host based on the state transition probability and updating the next physical host to the current physical host. And update the initial pheromone concentration, return to step 3; Step 10, search complete, map the virtual machines placed on physical host h in the virtual machine list to physical host h, update the initial matching solution set, and obtain the updated matching solution set; Step 11, increment the iteration count by 1, if it is determined that the iteration count is less than N, go to step 2, if it is determined that the iteration count is equal to N, exit the loop, and output the updated matching solution set. In the scheme of this application embodiment, by introducing a load balancing factor into the heuristic function that characterizes the expected degree of virtual machine matching with physical host, the load balancing on each physical host can be improved, and the resource utilization of physical host can be improved. In addition, after each ant completes a matching, the pheromone concentration between different physical hosts is locally updated according to the path found by the previous generation of ant colony, so that the subsequent ants can match virtual machines and physical hosts according to the path found by the previous generation of ant colony. This makes the physical host have strong scheduling reliability, can realize task scheduling in different resource environments, reduce the overall cost of task execution, improve the task scheduling rate, and thus improve the running speed of the entire system in the process of scheduling network cloud resources, thereby making the entire scheduling process more efficient and faster.

[0088] The network cloud resource scheduling method provided in this application will be described in detail below with reference to the accompanying drawings, through specific embodiments and application scenarios.

[0089] Before introducing the network cloud resource scheduling method provided in the embodiments of this application, we will first introduce the network cloud resource scheduling system that implements the network cloud resource scheduling method provided in the embodiments of this application.

[0090] Figure 2 This is a schematic diagram of the structure of a network cloud resource scheduling system 100 provided in an embodiment of this application, as shown below. Figure 2 As shown, the network cloud resource scheduling system 100 provided in this application embodiment may include an improved ant colony algorithm module 110.

[0091] The improved ant colony algorithm module 110 is used to implement the network cloud resource scheduling method in the following embodiments.

[0092] In some embodiments, the improved ant colony algorithm module can replace the Nova resource scheduler in the prior art, and the improved ant colony algorithm module in the embodiments of this application can be used to schedule network cloud resources.

[0093] In the embodiments of this application, the improved ant colony algorithm module performs the following process: Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host; Step 2: Place N ants on each physical host to obtain the initial matching solution set of virtual machines and physical hosts; Step 3: The m-th ant first selects a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being placed into the current physical host; Step 4: Based on the expectation, calculate the selection probability of virtual machine w being selected by the current physical host; Step 5: Select a virtual machine according to the selection probability and place the selected virtual machine w on the current physical host; Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor according to the resource capacity of each physical host; Step 7: Calculate the heuristic function according to the load balancing factor; Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host according to the heuristic function; Step 9: Select the next physical host according to the state transition probability, update the next physical host to the current physical host, and update the initial pheromone concentration. Pheromones concentration, return to step 3; Step 10, search complete, map the virtual machines placed on physical host h from the virtual machine list to physical host h, update the initial matching solution set, and obtain the updated matching solution set; Step 11, increment the iteration count by 1, if the iteration count is less than N, go to step 2, if the iteration count is equal to N, exit the loop and output the updated matching solution set. Thus, by introducing a load balancing factor into the heuristic function that characterizes the expected degree of virtual machine matching with physical host, the load balancing on each physical host can be improved, and the resource utilization of physical hosts can be improved. In addition, after each ant completes a match, the pheromone concentration between different physical hosts is locally updated according to the path found by the previous generation of ants. This allows subsequent ants to match virtual machines and physical hosts according to the path found by the previous generation of ants. This makes the physical host have strong scheduling reliability, can realize task scheduling in different resource environments, reduce the overall cost of task execution, and improve the task scheduling rate, thereby improving the running speed of the entire system in the process of scheduling network cloud resources, making the entire scheduling process more efficient and faster.

[0094] In some embodiments, to further improve the scheduling efficiency of the network cloud resource scheduling system, refer to Figure 3 The systems mentioned above may also include:

[0095] The cloud resource initialization module 120 is used to obtain basic information about each virtual machine.

[0096] Resource node selection module 130 is used to initialize the initial pheromone concentration of each physical host;

[0097] The model building module 140 is used to build a resource scheduling model based on the basic information of each virtual machine and the initial pheromone concentration of each physical host;

[0098] The improved ant colony algorithm module 110 is used to execute the network cloud resource scheduling method described in the following embodiment in the resource scheduling model, and send the updated matching solution set output to the data center resource scheduling module 150.

[0099] The data center resource scheduling module 150 is used to deploy each of the virtual machines to each of the physical hosts based on the updated matching solution set.

[0100] The basic information of each virtual machine may include, but is not limited to, the virtual machine's real-time computing power, inherent computing power, RAM size, and bandwidth.

[0101] The initial pheromone concentration can be a pre-set pheromone concentration on each physical host. This initial pheromone concentration can be determined based on the matching set between virtual machines and physical hosts obtained from a basic scheduling algorithm (e.g., the Min-Min algorithm).

[0102] In one example, there are five physical hosts: physical host 1, physical host 2, physical host 3, physical host 4, and physical host 5. There are three virtual machines to be deployed: virtual machine 1, virtual machine 2, and virtual machine 3. The matching set obtained using the Min-Min algorithm is to deploy virtual machine 1 to physical host 1, and virtual machine 2 and virtual machine 3 to physical host 2. The initial pheromone concentration of physical host 1 can be c1, the initial pheromone concentration of physical host 2 can be c2, and the initial pheromone concentration of physical hosts 3, 4, and 5 can be 0. Specifically, c1 is less than c2. Therefore, when deploying virtual machines later, it is preferable to deploy them to physical host 2 because physical host 2 has a higher pheromone concentration, attracting more virtual machines.

[0103] The matching solution set can be a set of matching between virtual machines and physical hosts, which includes how to deploy virtual machines on physical hosts, and which virtual machines are deployed on which physical hosts.

[0104] In the embodiments of this application, the basic information of each virtual machine is obtained through the cloud resource initialization module. Then, the initial pheromone concentration of each physical host is initialized based on the resource node selection module. Based on the model building module, a resource scheduling model is built according to the basic information of each virtual machine and the initial pheromone concentration of each physical host. Based on the improved ant colony algorithm module, the network cloud resource scheduling method is executed in the resource scheduling model, and the updated matching solution set is output. Based on the updated matching solution set, the data center resource scheduling module can accurately deploy each virtual machine to each physical host, thereby maximizing the utilization of physical hosts and improving the utilization rate of physical hosts.

[0105] The following describes the network cloud resource scheduling method provided in the embodiments of this application.

[0106] Figure 4 This is a flowchart illustrating a network cloud resource scheduling method provided in an embodiment of this application. This network cloud resource scheduling method can be applied to the above-mentioned... Figures 2-3 The improved ant colony algorithm module 110 in [the text is incomplete and likely refers to a different module or module]. Figure 4 As shown, the network cloud resource scheduling method provided in this application embodiment may include steps 1-11.

[0107] Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts used to deploy each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host. The list of virtual machines includes M virtual machines, and the list of physical hosts includes P physical hosts. M, N, and P are all positive integers.

[0108] In some embodiments, the number of virtual machines to be deployed M, the number of physical hosts used to deploy each virtual machine P, and the number of ants N are first initialized, and the initial pheromone concentration of each physical host is obtained.

[0109] Step 2: Place N ants on each physical host to obtain the initial matching solution set of virtual machines and physical hosts.

[0110] The initial matching solution set can be the matching solution set between the virtual machine and the physical host obtained after placing N ants on each physical host.

[0111] In some embodiments, in order to accurately obtain the initial matching solution set of the virtual machine and the physical host, step 2 may specifically include:

[0112] Divide the N ants into a first ant set and a second ant set;

[0113] Based on the initial pheromone concentration, the ants in the first ant group are placed on each physical host.

[0114] The ants in the second ant set are randomly placed on various physical hosts.

[0115] The first ant set and the second ant set can be a preset ratio, with the number of ants in the first ant set being greater than the number of ants in the second ant set. For example, the ratio of the first ant set to the second ant set can be 8:2.

[0116] In some embodiments, a portion of the ants can be placed on each physical host based on the initial pheromone concentration of each host. Then, another portion of the ants can be randomly placed on each physical host.

[0117] In the embodiments of this application, some ants are matched according to the initial pheromone concentration, and the remaining ants are randomly assigned. Setting the ratio of the two to a preset ratio can obtain a better global optimal probability, thereby improving the system running speed.

[0118] Step 3: The m-th ant first obtains a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being loaded into the current physical host, where m≤N.

[0119] Here, the degree of expectation can be the degree to which the virtual machine w expects to be placed on the current physical host.

[0120] Step 4: Based on the degree of expectation, calculate the probability of virtual machine w being selected by the current physical host.

[0121] Step 5: Select a virtual machine based on the selected probability and place the selected virtual machine w on the current physical host.

[0122] In some embodiments, selecting a virtual machine based on the probability of being selected may specifically include:

[0123] The virtual machine is selected using a roulette wheel betting algorithm based on the probability of being selected.

[0124] In some embodiments, a roulette wheel betting algorithm is used to select virtual machines based on their selection probability. Specifically, the selection probability of each virtual machine being selected by the current physical host can be mapped to a sector position on a roulette wheel. The roulette wheel spins to obtain a random result, which is used as the final result given by the ants to the current physical host in this round of iteration, thereby completing the mapping between virtual machines and physical hosts and improving the accuracy of prediction.

[0125] Step 6: Update the resource capacity of the current physical hosts, and calculate the load balancing factor based on the resource capacity of each physical host.

[0126] In some embodiments, after a virtual machine is placed on a physical machine, the resource capacity of the current physical host can be updated, that is, to see how much remaining resources the current physical machine has to store other virtual machines after placing virtual machine w.

[0127] In some embodiments, to accurately calculate the load balancing factor, step 6 may specifically include:

[0128] Based on the resource capacity of each physical host, the load balancing factor can be calculated according to the following formula (1):

[0129]

[0130] Among them, L j T is the load balancing factor. j T is the time T required for physical host j to process the task. avg Let T be the average time required for P physical hosts to process the task. max Let T be the maximum time required for P physical hosts to process the task. min The minimum time required to process a task for P physical hosts.

[0131] In the embodiments of this application, the load balancing factor can be accurately calculated using the above formula (1).

[0132] Step 7: Calculate the heuristic function based on the load balancing factor.

[0133] In some embodiments, to accurately calculate the heuristic function, step 7 may specifically include:

[0134] Based on the load balancing factor, the heuristic function can be calculated according to the following formula (2):

[0135]

[0136] Where, η ij For the heuristic function, time ij Let be the time it takes for the ant to migrate from the i-th physical host to the j-th physical host.

[0137] Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function.

[0138] The state transition probability can be the probability that the m-th ant will move from the current physical host to the next physical host, and is used to characterize the weight of the m-th ant in choosing the current physical host.

[0139] Step 9: Based on the state transition probability, select the next physical host, update the next physical host to the current physical host, update the initial pheromone concentration, and return to step 3.

[0140] In some embodiments, the next physical host is selected based on the state transition probability, the next physical host is updated to the current physical host, the initial pheromone concentration is updated, and then the expected degree of the m-th ant placing virtual machine w into the next physical host is calculated.

[0141] In some embodiments, the initial pheromone concentration can be updated according to the following formula (3):

[0142] τ ij (t+n)=(1-ρ)τ ij (t)+Δτ ij (t) (3)

[0143] Where ρ represents the volatile nature of the pheromone, and τ ij (t) represents the pheromone concentration between physical host i and physical host j at time t, τ ij (t+n) represents the pheromone concentration between physical host i and physical host j at time (t+n), Δτ ij (t) represents the increase in pheromone concentration of ants in this cycle.

[0144] In some embodiments, the pheromone concentration increment Δτ in the above formula (3) ij (t) is expressed as the following formula (4):

[0145]

[0146] in, Let Q be the pheromone concentration left by ant m between physical host i and physical host j in this iteration, Q be a constant, NC be the iteration number, and L be the pheromone concentration. m Let L be the total length of the path ant m traversed in this loop. best This is the optimal solution from the previous iteration.

[0147] In the embodiments of this application, the pheromone concentration increment is optimized, which improves the convergence speed of the improved ant colony algorithm and shortens the search time.

[0148] Step 10: Search complete. Map the virtual machines in the virtual machine list that are placed on physical host h to physical host h, update the initial matching solution set, and obtain the updated matching solution set.

[0149] In some embodiments, after the search of an ant is completed, the virtual machines in the virtual machine list placed on the physical host are mapped to the physical host, which can update the initial matching solution set and obtain the updated matching solution set.

[0150] Step 11: Increment the iteration count by 1. If the iteration count is less than N, proceed to Step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set.

[0151] In some embodiments, if the number of iterations is less than the number of ants N, return to step 2, redistribute the ants to each physical host according to the updated initial pheromone concentration, then obtain the next ant, and execute the process of steps 3-11 until the number of iterations equals N, then exit the loop, output the updated matching solution set, and obtain the final allocation scheme for allocating each virtual machine to each physical host.

[0152] In the embodiments of this application, the original Nova scheduler is optimized by configuring the Nova scheduler driver to an improved ant colony algorithm module, thereby optimizing the resource scheduling capabilities of the OpenStack network cloud. The improved ant colony algorithm module optimizes and improves the program and formula parameters of the ant colony algorithm, significantly shortening the convergence speed and optimizing resource allocation. By improving the ant colony algorithm, the improved algorithm is faster in its optimization capabilities and convergence speed, thus making the scheduling of network cloud resources faster and more efficient.

[0153] It should be noted that the network cloud resource scheduling method provided in this application embodiment can be executed by a network cloud resource scheduling device or a control module in the network cloud resource scheduling device for executing the network cloud resource scheduling method.

[0154] Based on the same inventive concept as the aforementioned network cloud resource scheduling method, this application also provides a network cloud resource scheduling device. The following is in conjunction with... Figure 5 The network cloud resource scheduling device provided in the embodiments of this application will be described in detail.

[0155] Figure 5 This is a schematic diagram of the structure of a network cloud resource scheduling device according to an exemplary embodiment.

[0156] like Figure 5 As shown, the network cloud resource scheduling device 400 may include the above-mentioned Figures 2-3 The improved ant colony algorithm module 110 in the model.

[0157] The improved ant colony algorithm module 110 is specifically used for:

[0158] Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host. The list of virtual machines includes M virtual machines, and the list of physical hosts includes P physical hosts. M, N, and P are all positive integers.

[0159] Step 2: Place N ants on each of the physical hosts to obtain the initial matching solution set of the virtual machine and the physical host;

[0160] Step 3: The m-th ant first obtains a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being loaded into the current physical host, where m≤N;

[0161] Step 4: Based on the expected level, calculate the probability that the virtual machine w will be selected by the current physical host;

[0162] Step 5: Select a virtual machine based on the selected probability and place the selected virtual machine w on the current physical host;

[0163] Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor based on the resource capacity of each physical host;

[0164] Step 7: Calculate the heuristic function based on the load balancing factor;

[0165] Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function;

[0166] Step 9: Based on the state transition probability, select the next physical host, update the next physical host to the current physical host, update the initial pheromone concentration, and return to step 3;

[0167] Step 10: Search complete. Map the virtual machines in the virtual machine list that are placed on physical host h to physical host h, update the initial matching solution set, and obtain the updated matching solution set.

[0168] Step 11: Increment the iteration count by 1. If the iteration count is less than N, proceed to Step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set.

[0169] In this embodiment, step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host; Step 2: Place N ants on each physical host to obtain the initial matching solution set of virtual machines and physical hosts; Step 3: The m-th ant first selects a virtual machine that can be placed on the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being placed on the current physical host; Step 4: Based on the expectation, calculate the selection probability of virtual machine w being selected by the current physical host; Step 5: Select a virtual machine according to the selection probability and place the selected virtual machine w on the current physical host; Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor according to the resource capacity of each physical host; Step 7: Calculate the heuristic function according to the load balancing factor; Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host according to the heuristic function; Step 9: Select the next physical host according to the state transition probability, update the next physical host to the current physical host, update the initial pheromone concentration, and return to step 3; 10. Search complete. Map the virtual machines placed on physical host h from the virtual machine list to physical host h, update the initial matching solution set, and obtain the updated matching solution set. Step 11. Increment the iteration count by 1. If the iteration count is less than N, go to step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set. In the scheme of this application embodiment, by introducing a load balancing factor into the heuristic function that characterizes the expected degree of virtual machine matching with physical host, the load balancing on each physical host can be improved, and the resource utilization of physical host can be improved. In addition, after each ant completes a matching, the pheromone concentration between different physical hosts is locally updated according to the path found by the previous generation of ant colony. This allows subsequent ants to match virtual machines and physical hosts according to the path found by the previous generation of ant colony. This makes the physical host have strong scheduling reliability, can realize task scheduling in different resource environments, reduce the overall cost of task execution, and improve the task scheduling rate, thereby improving the running speed of the entire system in the process of scheduling network cloud resources, making the entire scheduling process more efficient and faster.

[0170] In some embodiments, step 2 may specifically include:

[0171] Divide N ants into a first ant set and a second ant set, wherein the first ant set and the second ant set are in a preset ratio, and the number of ants in the first ant set is greater than the number of ants in the second ant set.

[0172] Based on the initial pheromone concentration, the ants in the first ant group are placed on each of the physical hosts;

[0173] The ants from the second ant group are randomly placed on each of the physical hosts.

[0174] In some embodiments, step 5, selecting a virtual machine based on the selected probability, may specifically include:

[0175] The virtual machine is selected using a roulette wheel betting algorithm based on the probability of being selected.

[0176] In some embodiments, step 6, calculating the load balancing factor based on the resource capacity of each physical host, includes:

[0177] Based on the resource capacity of each physical host, the load balancing factor is calculated according to the following formula:

[0178]

[0179] Among them, L j Let T be the load balancing factor. j T is the time T required for physical host j to process the task. avg Let T be the average time required for P physical hosts to process the task. max Let T be the maximum time required for P physical hosts to process the task. min The minimum time required to process a task for P physical hosts.

[0180] In some embodiments, step 7 includes:

[0181] Based on the load balancing factor, the heuristic function is calculated according to the following formula:

[0182]

[0183] Where, η ij For the heuristic function, time ij Let be the time it takes for the ant to migrate from the i-th physical host to the j-th physical host.

[0184] In some embodiments, updating the initial pheromone in step 9 includes:

[0185] The initial pheromone concentration is updated according to the following formula:

[0186] τ ij (t+n)=(1-ρ)τ ij (t)+Δτ ij (t)

[0187] Where ρ represents the volatile nature of the pheromone, and τ ij (t) represents the pheromone concentration between physical host i and physical host j at time t, τ ij(t+n) represents the pheromone concentration between physical host i and physical host j at time (t+n), Δτ ij (t) represents the increase in pheromone concentration of ants in this cycle.

[0188] In some embodiments, the Δτ ij (t) is represented as follows:

[0189]

[0190]

[0191] in, Let Q be the pheromone concentration left by ant m between physical host i and physical host j in this iteration, Q be a constant, NC be the iteration number, and L be the pheromone concentration. m Let L be the total length of the path ant m traversed in this loop. best This is the optimal solution from the previous iteration.

[0192] The network cloud resource scheduling device provided in this application embodiment can be used to execute the network cloud resource scheduling methods provided in the above method embodiments. Their implementation principles and technical effects are similar, and for the sake of brevity, they will not be described in detail here.

[0193] Based on the same inventive concept, embodiments of this application also provide an electronic device.

[0194] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. For example... Figure 6 As shown, the electronic device may include a processor 501 and a memory 502 storing computer programs or instructions.

[0195] Specifically, the processor 501 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of the present invention.

[0196] Memory 502 may include mass storage for data or instructions. For example, and not limitingly, memory 502 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 502 may include removable or non-removable (or fixed) media. Where appropriate, memory 502 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 502 is non-volatile solid-state memory. Memory may include read-only memory (ROM), random-access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, a memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described in the network cloud resource scheduling method provided in the above embodiments.

[0197] The processor 501 implements any of the network cloud resource scheduling methods described in the above embodiments by reading and executing computer program instructions stored in the memory 502.

[0198] In one example, the electronic device may also include a communication interface 503 and a bus 510. Wherein, as... Figure 6 As shown, the processor 501, memory 502, and communication interface 503 are connected through bus 510 and complete communication with each other.

[0199] The communication interface 503 is mainly used to realize communication between various modules, devices, units and / or devices in the embodiments of the present invention.

[0200] Bus 510 includes hardware, software, or both, that couples components of an electronic device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 510 may include one or more buses. Although specific buses are described and illustrated in embodiments of the invention, the invention contemplates any suitable bus or interconnect.

[0201] The electronic device can execute the network cloud resource scheduling method in the embodiments of the present invention, thereby achieving... Figure 4 The method for scheduling network cloud resources is described.

[0202] Furthermore, in conjunction with the network cloud resource scheduling methods in the above embodiments, this invention can be implemented using a readable storage medium. This readable storage medium stores program instructions, which, when executed by a processor, implement any of the network cloud resource scheduling methods described in the above embodiments.

[0203] In addition, in conjunction with the network cloud resource scheduling methods in the above embodiments, the present invention can provide a computer program product, wherein when the instructions in the computer program product are executed by the processor of an electronic device, the electronic device executes any one of the network cloud resource scheduling methods in the above embodiments.

[0204] The functional blocks shown in the above-described structural diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this invention are programs or code segments used to perform the required tasks. The programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried in a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0205] It should also be noted that the exemplary embodiments mentioned in this invention describe methods or systems based on a series of steps or apparatus. However, this invention is not limited to the order of the steps described above; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0206] The aspects of this application have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by dedicated hardware performing the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions.

[0207] The above description is merely a specific embodiment of the present invention. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in the present invention, and these modifications or substitutions should all be covered within the protection scope of the present invention.

Claims

1. A method for scheduling network cloud resources, characterized in that, The method includes: Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host. The list of virtual machines includes M virtual machines, and the list of physical hosts includes P physical hosts. M, N, and P are all positive integers. Step 2: Place N ants on each of the physical hosts to obtain the initial matching solution set of the virtual machine and the physical host; Step 3: The m-th ant first obtains a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being loaded into the current physical host, where m≤N; Step 4: Based on the expected level, calculate the probability that the virtual machine w will be selected by the current physical host; Step 5: Select a virtual machine based on the selected probability and place the selected virtual machine w on the current physical host; Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor based on the resource capacity of each physical host; Step 7: Calculate the heuristic function based on the load balancing factor; Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function; Step 9: Based on the state transition probability, select the next physical host, update the next physical host to the current physical host, and locally update the initial pheromone concentration between different physical hosts according to the path found by the previous generation of ant colony, and return to step 3; Step 10: Search complete. Map the virtual machines in the virtual machine list that are placed on physical host h to physical host h, update the initial matching solution set, and obtain the updated matching solution set. Step 11: Increment the iteration count by 1. If the iteration count is less than N, proceed to Step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set. Step 6 calculates the load balancing factor based on the resource capacity of each physical host, including: Based on the resource capacity of each physical host, the load balancing factor is calculated according to the following formula: in, The load balancing factor is... The time required for physical host j to process the task. Let P be the average time required for P physical hosts to process the task. The maximum time required for P physical hosts to process the task. The minimum time required to process a task for P physical hosts.

2. The method according to claim 1, characterized in that, Step 2 includes: Divide N ants into a first ant set and a second ant set, wherein the first ant set and the second ant set are in a preset ratio, and the number of ants in the first ant set is greater than the number of ants in the second ant set. Based on the initial pheromone concentration, the ants in the first ant group are placed on each of the physical hosts; The ants from the second ant group are randomly placed on each of the physical hosts.

3. The method according to claim 1, characterized in that, Step 5, which selects a virtual machine based on the selected probability, includes: The virtual machine is selected using a roulette wheel betting algorithm based on the selected probability.

4. The method according to claim 1, characterized in that, Step 7 includes: Based on the load balancing factor, the heuristic function is calculated according to the following formula: in, For the heuristic function, Let be the time it takes for the ant to migrate from the i-th physical host to the j-th physical host.

5. The method according to claim 1, characterized in that, Step 9 updates the initial pheromone, including: The initial pheromone concentration is updated according to the following formula: in, The degree of pheromone volatilization, Let be the pheromone concentration between physical host i and physical host j at time t. Let pheromone concentration be the difference between physical host i and physical host j at time (t+n). This represents the increase in pheromone concentration in the ants during this cycle.

6. The method according to claim 5, characterized in that, The It is expressed as follows: in, This represents the pheromone concentration left by ant m between physical host i and physical host j during this loop. It is a constant. For the number of iterations, Let m be the total length of the path ant m traversed in this iteration. This is the optimal solution from the previous iteration.

7. A network cloud resource scheduling device, characterized in that, The device includes an improved ant colony algorithm module, which is specifically used for: Step 1: Initialize the list of virtual machines to be deployed, the list of physical hosts for deploying each virtual machine, and the number of ants N, and obtain the initial pheromone concentration of each physical host. The list of virtual machines includes M virtual machines, and the list of physical hosts includes P physical hosts. M, N, and P are all positive integers. Step 2: Place N ants on each of the physical hosts to obtain the initial matching solution set of the virtual machine and the physical host; Step 3: The m-th ant first obtains a virtual machine that can be loaded into the current physical host from the list of virtual machines, and calculates the expectation of virtual machine w being loaded into the current physical host, where m≤N; Step 4: Based on the expected level, calculate the probability that the virtual machine w will be selected by the current physical host; Step 5: Select a virtual machine based on the selected probability and place the selected virtual machine w on the current physical host; Step 6: Update the resource capacity of the current physical host, and calculate the load balancing factor based on the resource capacity of each physical host; Step 7: Calculate the heuristic function based on the load balancing factor; Step 8: Calculate the state transition probability of the m-th ant moving from the current physical host to the next physical host based on the heuristic function; Step 9: Based on the state transition probability, select the next physical host, update the next physical host to the current physical host, and locally update the initial pheromone concentration between different physical hosts according to the path found by the previous generation of ant colony, and return to step 3; Step 10: Search complete. Map the virtual machines in the virtual machine list that are placed on physical host h to physical host h, update the initial matching solution set, and obtain the updated matching solution set. Step 11: Increment the iteration count by 1. If the iteration count is less than N, proceed to Step 2. If the iteration count is equal to N, exit the loop and output the updated matching solution set. Step 6 calculates the load balancing factor based on the resource capacity of each physical host, including: Based on the resource capacity of each physical host, the load balancing factor is calculated according to the following formula: in, The load balancing factor is... The time required for physical host j to process the task. Let P be the average time required for P physical hosts to process the task. The maximum time required for P physical hosts to process the task. The minimum time required to process a task for P physical hosts.

8. A network cloud resource scheduling system, characterized in that, The system includes: An improved ant colony algorithm module implements the network cloud resource scheduling method according to any one of claims 1-6.

9. The system according to claim 8, characterized in that, The system also includes: The cloud resource initialization module is used to obtain basic information about each virtual machine. The resource node selection module is used to initialize the initial pheromone concentration of each physical host. The model building module is used to build a resource scheduling model based on the basic information of each virtual machine and the initial pheromone concentration of each physical host; The improved ant colony algorithm module is used to execute the network cloud resource scheduling method according to any one of claims 1-6 in the resource scheduling model, and send the updated matching solution set to the data center resource scheduling module. The data center resource scheduling module is used to deploy each virtual machine to each physical host based on the updated matching solution set.

10. An electronic device, characterized in that, It includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the network cloud resource scheduling method as described in any one of claims 1-6.

11. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions, which, when executed by a processor, implement the steps of the network cloud resource scheduling method as described in any one of claims 1-6.

12. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the steps of the network cloud resource scheduling method as described in any one of claims 1-6.