Cloud Computing Resource Scheduling and a Survey of Its Evolutionary Approaches <s> Distributed and Parallel Scheduling <s> Although evolutionary algorithm is a powerful optimization tool, its computation cost involved in terms of time and hardware resources increases as the size or complexity of the problem increases. One promising approach to overcome this limitation is to exploit the inherent parallelism of evolutionary algorithms by creating an infrastructure necessary to support distributed evolutionary computing using existing Internet and hardware resources. This paper presents a Java-based distributed evolutionary computing software (Paladin-DEC), which enhances the concurrent processing and performance of evolutionary algorithms by allowing inter-communications of subpopulations among various computers over the Internet. Such a distributed system enables individuals to migrate among multiple subpopulations according to some patterns to induce diversity of elite individuals periodically, in a way that simulates the species evolve in natural environment. The Paladin-DEC software is capable of keeping data integrity throughout the computation, and is incorporated with the features of robustness, security, fault tolerance, and work balancing. The effectiveness and advantages of the Paladin-DEC are illustrated upon two case studies of drug scheduling in cancer chemotherapy and searching probe sets of yeast genome. <s> BIB001 </s> Cloud Computing Resource Scheduling and a Survey of Its Evolutionary Approaches <s> Distributed and Parallel Scheduling <s> Cloud computing is a utility computing paradigm that has become a solid base for a wide array of enterprise and end-user applications. Providers offer varying service portfolios that differ in resource configurations and provided services. A comprehensive solution for resource allocation is fundamental to any cloud computing service provider. Any resource allocation model has to consider computational resources as well as network resources to accurately reflect practical demands. Another aspect that should be considered while provisioning resources is energy consumption. This aspect is getting more attention from industrial and government parties. Calls for the support of green clouds are gaining momentum. With that in mind, resource allocation algorithms aim to accomplish the task of scheduling virtual machines on the servers residing in data centers and consequently scheduling network resources while complying with the problem constraints. Several external and internal factors that affect the performance of resource allocation models are introduced in this article. These factors are discussed in detail, and research gaps are pointed out. Design challenges are discussed with the aim of providing a reference to be used when designing a comprehensive energy-aware resource allocation model for cloud computing data centers. <s> BIB002 </s> Cloud Computing Resource Scheduling and a Survey of Its Evolutionary Approaches <s> Distributed and Parallel Scheduling <s> A brief review of the Internet history reveals the fact that the Internet evolved after the formation of primarily independent networks. Similarly, interconnected clouds, also called Inter-cloud, can be viewed as a natural evolution of cloud computing. Recent studies show the benefits in utilizing multiple clouds and present attempts for the realization of an Inter-cloud or federated cloud environment. However, cloud vendors have not taken into account cloud interoperability issues, and each cloud comes with its own solution and interfaces for services. This survey initially discusses all the relevant aspects motivating cloud interoperability. Furthermore, it categorizes and identifies possible cloud interoperability scenarios and architectures. The spectrum of challenges and obstacles that the Inter-cloud realization is faced with are covered, a taxonomy of them is provided, and fitting enablers that tackle each challenge are identified. All these aspects require a comprehensive review of the state of the art, including ongoing projects and studies in the area. We conclude by discussing future directions and trends toward the holistic approach in this regard. <s> BIB003
Another challenge in cloud resource scheduling is that the deployment of cloud resources is often distributed with different data centers or at different locations within a cloud center BIB002 , which is especially the case in interconnected cloud computing BIB003 ]. Therefore, distributed processes are necessary. Moreover, cloud users can be from anywhere in the world through the Internet. An intuition is that it would be inefficient to schedule the resources in, for example, Asian data centers to European users or to schedule the resources in European data centers to American users. Therefore, distributed EC algorithms are in need BIB001 ], which could be implemented in a similar way to parallel EC algorithms. This is not only useful for scheduling cloud resources among different data centers, but is also useful for scheduling different kinds of resources in the same data center. Apart from meeting the previous challenges in cloud resource management, the large-scale challenge and real-time demand can also benefit from distributed or parallel scheduling. However, many issues about a distributed process need to be explored further. For example, if we divide the populations into subpopulations and run them in various processors and maintain the algorithm diversity to avoid local optima, coevolution and information share among different subpopulations should be considered. A finer-grain implementation is to distribute all the individuals of the population to different processors and run them in parallel. This would save computational time and hence be useful for real-time scheduling.