Job scheduling in cloud datacenters using enhanced particle swarm optimization
Amlan Chatterjee, Matthew Levan, Crosby Lanham, Mishael Zerrudo · 2017
Scheduling continues to be a predominant area of research in computer science, especially with the advent of cloud computing and Internet-scale applications, which require global dissemination and high-availability to meet the variable demand of users from geographically distributed locations. While there are various algorithms which address the problem of scheduling, the issue of assigning compute jobs to servers in cloud data centers is particularly challenging, given its combinatorial nature. Operating systems utilize basic scheduling algorithms such as first fit, worst fit, best fit, round robin, and priority for determining the order in which processes are sent to the central processing unit and memory, disk space and other resources are allocated to be utilized. In datacenters, however, scheduling becomes more difficult due to increased complexity of the infrastructure and time-constraints of cloud platforms in general. Therefore, to address the issue of job scheduling on cloud datacenters, algorithms inspired by the natural world, such as particle swarm optimization, ant colony optimization, artificial bee colony, and others have been proposed. In this paper we explore the particle swarm optimization algorithm further, and study the effects of changing the social and cognitive value contributions in the convergence of the algorithm towards a solution. We also implement the naïve scheduling algorithms for the cloud datacenters as well, and perform a comparison with the particle swarm optimization algorithm. All the implementations are done using CloudSim, a simulator for cloud computing platforms, and the results are shown. It can be concluded that the advanced algorithms indeed perform better than the naïve ones; however, the social and cognitive constants do not influence the solution for the particle swarm optimization technique significantly.