Abstract
In the field of cloud computing, Particle swarm optimization (PSO) is an important intelligent algorithm for solving the task scheduling problem, and has been rapidly developed. In order to improve the overall optimization ability, and get a low cost optimization solution, this paper proposes an improved particle swarm optimization (IPSO) algorithm based on the adaptive inertia weight and random factor correlation. Simulation results show that under the same conditions, IPSO algorithm is less than the sequential scheduling algorithm, the greedy algorithm, the correlation particle swarm optimization (CPSO) algorithm and the new adaptive inertia weight based particle swarm optimization (NewPSO) algorithm in terms of cost consumption (including time cost and virtual machine cost).
Introduction
Cloud computing [3], considered as a global technological revolution, has become a hot topic of Internet development through long technological changes [20]. It provides users with powerful computing capabilities and massive data storage capabilities through large-scale datacenters, it’features include: transparency, scalability, redundancy, availability, economy and etc. [4]. In addition, the time and quantity of resources in the traditional distributed environment are relatively fixed, while the resources in the cloud environment are pay-as-you-go. This results in workflow scheduling need to consider resource availability. Therefore, the workflow scheduling in the cloud environment needs to consider the user-defined time and cost constraints synchronously. The time constraint ensures that the workflow can be completed within the load-and-determination time. The cost constraint can ensure that the execution cost of the workflow is within the user’s budget. Due to these unique characteristics of cloud computing, more and more researchers pay more attention to the task scheduling strategy based on cloud computing.
The task scheduling problem under the cloud computing platform not only satisfies the user’s QoS target constraint requirements, but also maximizes the service revenue of cloud service providers as much as possible. Therefore, how to efficiently schedule user tasks and rationally allocate system resources has become a research focus and technical difficulties in the field of cloud computing. The goal is to enable massive user tasks to be scheduled at a relatively low cost in a relatively short time, while ensuring that cloud systems have high resource utilization and overall load levels.
Common cloud computing task scheduling algorithms are mainly divided into heuristic and non-heuristic two major algorithms. In recent years, in order to get a better scheduling solution, many scholars use heuristic algorithms to optimize task scheduling problems, such as genetic algorithms [13], simulated annealing algorithms and etc. The swarm intelligence algorithm [7] is also a big class in the heuristic algorithm, such as ant colony optimization algorithms [21], and it has been widely used in cloud computing task scheduling problems.
Related work
To make the task scheduling of cloud computing platforms have better load balancing and earlier completion time, the literature [8] proposes a cloud computing scheduling algorithm with relatively minimum execution time variance. In order to improve the overall system scheduling efficiency in the cloud computing environment, the literature [14] improves the greedy algorithm. In order to improve the optimization speed, balance scheduling cost and user satisfaction, the literature [9] proposes a cloud task scheduling strategy based on clustering and improved co-occurrence algorithm. In 1995, Kennedy et al. [6] proposed PSO algorithm, the location of each particle in the algorithm is the solution to the problem studied, particles gradually approach the optimal solution by adjusting their speed and direction, it is similar to a bird group adjusts flight speed and direction by sharing position information with each individual, looking for food [1, 2]. Because it has few parameters, it is easy to implement and converges quickly, it becomes a new tool to solve the task scheduling problem. However, one of the biggest disadvantages is that it is easy to fall into a local optimal solution. In order to solve this problem, many scholars put forward the improvement methods on this basis. Literature [5] based on the improved particle swarm optimization algorithm cloud computing task scheduling method, the particle update method, initialization method and weight factor update method were changed. The experimental results show that not only the total cost required is the least, but also the fastest convergence speed and user satisfaction. Higher degree. The literature [15] proposes an adaptive particle swarm optimization algorithm (DCWPSO) with dynamic variable inertia weights to solve the model, aiming at the problem that standard particle groups are easy to prematurely affect the optimization results. The literature [11] has problems of uneven distribution and bad distribution in cloud computing resource allocation. It uses improved ant colony algorithm and particle swarm algorithm to perform resource allocation. Experiments show that the fusion algorithm is compatible with ant colony algorithm and particle swarm algorithm. Compared with the task completion time and energy consumption, it has obviously improved. In order to solve the disadvantages of low population diversity and easy fall into local optimum of particle swarms, literature [22] proposed particle swarm optimization based on self-adaptive mutation, experimental results show that the algorithm improves local search ability while enhancing population diversity. In order to improve the shortcomings of premature convergence and low precision of the particle swarm algorithm, literature [12] proposed multi-scale cooperative mutation particle swarm optimization algorithm, the results show that the algorithm has significantly improved in convergence speed and stability. In order to better balance the global and local search of particles, to avoid falling into a local optimum, literature [19] proposed new adaptive inertia weight based particle swarm optimization (NewPSO), the experimental results show that the new algorithm has a stable convergence, the lowest fitness, and an average reduction of 18% in execution costs. The above methods all improve the problem of local convergence, but it ignores the influence of random factors on the performance of the algorithm. In order to solve the defect that the global optimization ability is insufficient when the particle swarm optimization algorithm does not consider the role of the random factor in the optimization process, Literature [16] proposed correlation particle swarm optimization (CPSO), the experimental results show that compared with the original scheduling algorithm of Cloudsim, the total task completion time of the algorithm is obviously reduced, but it is not consider the influence of inertia weight.
The above particle swarm optimization algorithm does not consider the influence of inertia weight on the task scheduling process, or consider the influence of random factors on the task scheduling process. Therefore, in order to get a less expensive scheduling solution, this paper proposes an improved particle swarm optimization (IPSO) which considers both the inertia weight and the random factor correlation. The experimental results show that the IPSO algorithm is better than the sequential algorithm, the greedy algorithm, the PSO algorithm, the CPSO algorithm and the NewPSO algorithm in the cost consumption.
Task scheduling method based on particle swarm optimization [23]
In the PSO algorithm, the individual are particles that move in the population space. Each particle has two parameters: the current position
The position of the particle is affected by the best position the particle passes through, namely pbest. Another parameter that affects the position of a particle is its global best particle position, namely gbest. The performance of each particle is measured by a fitness function. There is a population, whose number of particles is
Among them,
The fitness in the particle swarm algorithm indicates the position of the particles [10]. This paper mainly studies how to reduce the cost, so the fitness function is:
Among them, the cost is defined as:
Through the Eqs (3) and (4), we can know that the higher the fitness, the smaller the cost, the better the position of the particles.
The traditional method of calculating the success value of the inertia weight does not consider the global optimal value, as a result, the calculation of the success rate and the inertia weight is not accurate enough. As a result, the global and local search of the particle cannot be effectively balanced during the iteration, in the end, the exact optimal solution can not be obtained. Therefore, for the problem of incomplete description of the position of a single particle in the traditional adaptive inertial weighted particle swarm algorithm, plus the comparison with the global optimum fitness of each particle, the particle’s position can be described more accurately. The successful value is calculated as follows:
Where
On the basis of adaptive inertia weight, the correlation between random factors is appropriately incorporated. This algorithm is called Improved Particle Swarm Optimization (IPSO). The specific process is shown in Fig. 1.
IPSO algorithm flow chart.
Where
for (every task) Calculate Select the gbest. While (runtimes Generate Calculate the Update
Experimental environment and parameters
CloudSim [17, 18] was launched by the Network Lab in Melbourne U, Australia. It can simulate real-world cloud computing clusters, including data centers, physical machines, virtual machines, and scheduling solutions, providing an enabling environment for cloud computing research and testing. In this paper, it is used to build the cloud computing environment, Eclipse is the development platform. Where the algorithm parameters in Table 1. Among them, in order to speed up the running time of the program, the population size should not be too large, and 100 can be selected. The virtual machine is used to assign tasks, because it is experimenting on the simulation platform, too many virtual machines are likely to cause load imbalance, so I set up 5 virtual machines. After a lot of experiments, in most cases, when the number of iterations is less than or equal to 100, the algorithm can find the optimal solution, so the maximum number of iterations is set to 100.
IPSO algorithm parameters
IPSO algorithm parameters
Cost change diagram with different task.
Cost change diagram with different iterations.
This paper compares the cost of IPSO algorithm with the sequential algorithm and the greedy algorithm. Among them, the method of calculating the cost is referred to in Section 3. Experiments were taken 50 to 600 tasks, calculate the cost of iteration 100 times, as shown in Fig. 2, the horizontal axis represents the number of tasks, the vertical axis represents the cost. It can be seen from the figure that the cost of the improved algorithm is lower than the other two algorithms, and with the number of tasks increases, the cost of the IPSO algorithm is significantly smaller and the advantage is more significant. Figure 3a–d are the cost-consumption trends of 100 iterations when the number of tasks is 50, 100, 200 and 300 respectively, where the abscissa represents the number of iterations, and the ordinate represents the cost. As can be seen from the figure, compared with the other two methods, the improved algorithm not only costs the least, but also as the number of iterations increases, the cost convergence of IPSO algorithm tends to be stable. That is to say, the more tasks, the greater the difference between the cost of the scheduling scheme of the IPSO algorithm and other algorithms, and the trend is relatively more stable. This is because when the number of tasks is small, each algorithm carries out a small-scale search, which can not reflect the advantages of adaptive inertia weight balance local and global search, and the cognitive relation between individual optimal solution and global optimal solution in the process of particle optimization, i.e. the correlation between
Conclusions and future work
In this paper, aiming at the problem that the PSO algorithm is easy to fall into the local optimal solution and the searching ability is poor, an IPSO task scheduling algorithm, with random factor correlation based on adaptive inertia weight, is proposed, which avoids the local optimum and needs low cost. However, the IPSO algorithm also has some drawbacks. Firstly, compared with other algorithms, although the IPSO algorithm reduces the cost, the running time of the program increases. Secondly, the IPSO algorithm only optimizes the cost, and other factors need to be considered in the real environment, such as load balancing, service quality, user satisfaction and etc. Therefore, we should continue doing further study of the algorithm.
Footnotes
Acknowledgments
This research was financially supported by Chinese Natural Science Foundations (61363016, 61063004), Key Project of Inner Mongolia Advanced Science Research (NJZZ14100), Inner Mongolia Colleges and Universities Education Department Science Research (NJZC059), Natural Science Foundation of Inner Mongolia Autonomous Region of China (NO. 2015MS0605, NO. 2015MS0626 and NO. 2015MS0627), and Inner Mongolia Autonomous Region Science and Technology Project (through the precipitation of GSM network on-line monitoring and data transmission system development), and Ministry of Education Scientific research foundation for Study abroad personal [2014] 1685.
