Cloud Computing Resource Scheduling and a Survey of Its Evolutionary Approaches <s> Scheduling for Load Balance <s> The current virtual machine(VM) resources scheduling in cloud computing environment mainly considers the current state of the system but seldom considers system variation and historical data, which always leads to load imbalance of the system. In view of the load balancing problem in VM resources scheduling, this paper presents a scheduling strategy on load balancing of VM resources based on genetic algorithm. According to historical data and current state of the system and through genetic algorithm, this strategy computes ahead the influence it will have on the system after the deployment of the needed VM resources and then chooses the least-affective solution, through which it achieves the best load balancing and reduces or avoids dynamic migration. This strategy solves the problem of load imbalance and high migration cost by traditional algorithms after scheduling. Experimental results prove that this method is able to realize load balancing and reasonable resources utilization both when system load is stable and variant. <s> BIB001 </s> Cloud Computing Resource Scheduling and a Survey of Its Evolutionary Approaches <s> Scheduling for Load Balance <s> Dynamic scheduling cloud resources according to the change of the load are key to improve cloud computing on-demand service capabilities. This paper proposes a load-adaptive cloud resource scheduling model based on ant colony algorithm. By real-time monitoring virtual machine of performance parameters, once judging overload, it schedules fast cloud resources using ant colony algorithm to bear some load on the load-free node. So that it can meet changing load requirements. By analyzing an example result, the model can meet the goals and requirements of self-adaptive cloud resources scheduling and improve the efficiency of the resource utilization. <s> BIB002
The scheduling problem of mapping VM resources to physical resources can be formulated similarly to the one of scheduling user tasks on cloud resources. Hence, when using a GA for scheduling, the chromosome code will be similar to the one shown in Figure 4 . The length of the chromosome is the number of the VMs and each gene is an integer indicating which PM the VM is scheduled on. According to this encoding scheme, proposed the use of a multiobjective GA approach to scheduling the VM resources on physical resources. They considered the load balance of CPU, memory, and bandwidth together as a multiobjective optimization problem, which was solved using the NSGA-II algorithm. In addition to the computational resource virtualization, storage resource virtualization also plays a significant role in a cloud computing environment. For this, proposed a load balance strategy based on a GA to schedule the virtual storage resources on a block storage system. Their experiments show that their dynamic load balance strategy for virtual storage scheduling can help a cloud storage system, that is, the Orthrus, provide higher I/O performance. BIB001 also used a GA approach to map VMs to physical resources with an optimized load balance, but via a different chromosome code scheme. As each PM can host several VMs, their GA approach uses a tree-type encoding scheme to indicate how many VMs are created in each PM. During the cloud runtime, the number of VMs may change (e.g., a new VM may be created or an existing VM may become unavailable). The computational requirements may also change. When these occur, the GA approach remaps the relationship between VMs and PM for a maximized load balance and a minimized VM migration. The authors evaluated and compared their approach in the OpenNebula cloud platform. In addition to GA-based methods, ACO-based approaches have also been reported for scheduling VM resources on physical resources for cloud resource virtualization. For example, BIB002 proposed using an ACO to find the nearest load-free cloud resource rapidly and to share some load of the overload cloud resources adaptively. In their study, the approach does not schedule a set of VMs on different cloud resources, but just performs the ACO process when some VMs are overloaded. The ACO process just acts like the ant to search for food in order to find the optimal physical resource (e.g., the load-free node) and to create new VMs to share the load of the overloaded VMs. Analyzing these publications we can conclude that if the user is concerned only with PM resource balancing, an ACO approach is preferred BIB002 . If the user is concerned only with storage balancing, a GA approach is preferred . If VM migration and resource balancing are both considered, the GA approach proposed by BIB001 is preferable. A multiobjective GA is preferred if several resource balancing objectives are considered simultaneously .